PHP将身份证正反面两张照片合成一张图片的代码


Posted in PHP onApril 08, 2017

具体代码如下,前面部分是面条代码,后面是封了一个函数,便于反复使用。注意函数前面的注释说明,因为不想给这个函数搞太多参数,所以有一些配置项就写死在函数里面了。

<?php
/*
$dst_path = "sfz-blank.jpg";
$z_path = "./z.jpg";
$f_path = "./f.jpg";
$wp_path = "sfz-wp.png";

$dst = @imagecreatefromjpeg($dst_path);
$im_z = imagecreatefromjpeg($z_path);//返回图像标识符
$im_f = imagecreatefromjpeg($f_path);//返回图像标识符
$im_wp = imagecreatefrompng($wp_path);//返回图像标识符

list($z_width,$z_height,$z_type,$z_attr)=getimagesize($z_path);
list($f_width,$f_height,$f_type,$f_attr)=getimagesize($f_path);

//imagecopyresized ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
imagecopyresized($dst,$im_z,10,10,0,0,580,360,$z_width,$z_height);//返回布尔值
imagecopyresized($dst,$im_f,10,380,0,0,580,360,$f_width,$f_height);//返回布尔值
imagecopyresized($dst,$im_wp,10,320,0,0,600,165,600,165);//返回布尔值

imagejpeg($dst, './'.time().".jpg");
imagedestroy($dst);

echo 'ok';
*/


$path_z = "./z.jpg";
$path_f = "./f.jpg";
echo makeSfzImage($path_z, $path_f);


/**
 * 通过身份证正面和背景照片,生成一图组合图片,并打上水印
 * 需要准备一张空白图片、一张水印图片,放在/webui/member/images/目录下,并在Upload目录下建sfz目录
 * @param string $path_z,正面
 * @param string $path_f,背面
 * @return string,生成后的照片路径,注意返回的格式是:./Upload/sfz/148909883.jpg
 *
 */
function makeSfzImage($path_z, $path_f){
  /*
  * 前面几项配置信息
  */
  $path_blank = realpath('./webui/member/images/sfz-blank.jpg'); //空白图片地址,用于打底
  $path_wp = realpath('./webui/member/images/sfz-wp.png'); //水印图片地址
  $path_save = './Upload/sfz/'; //保存路径

  //导入四张图片
  $im_blank = @imagecreatefromjpeg($path_blank);
  $im_z = @imagecreatefromjpeg($path_z);//返回图像标识符
  $im_f = @imagecreatefromjpeg($path_f);//返回图像标识符
  $im_wp = @imagecreatefrompng($path_wp);//返回图像标识符

  //获取正反图片的宽高
  list($z_width,$z_height,$z_type,$z_attr)=getimagesize($path_z);
  list($f_width,$f_height,$f_type,$f_attr)=getimagesize($path_f);

  //imagecopyresized ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
  //组合
  imagecopyresized($im_blank,$im_z,10,10,0,0,580,360,$z_width,$z_height);//返回布尔值
  imagecopyresized($im_blank,$im_f,10,380,0,0,580,360,$f_width,$f_height);//返回布尔值
  imagecopyresized($im_blank,$im_wp,10,320,0,0,600,165,600,165);//返回布尔值

  //生成
  $path_file = $path_save.time().".jpg";
  imagejpeg($im_blank, $path_file);
  imagedestroy($im_blank);

  return $path_file;
}
?>

最前面的几个是图片配置参数,大家可以根据需要修改一下即可。

PHP 相关文章推荐
php中文本数据翻页(留言本翻页)
Oct 09 PHP
PHP 防注入函数(格式化数据)
Aug 08 PHP
php引用返回与取消引用的详解
Jun 08 PHP
php二维数组用键名分组相加实例函数
Nov 06 PHP
php中限制ip段访问、禁止ip提交表单的代码分享
Aug 22 PHP
php array_values 返回数组的值实例详解
Nov 17 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
php批量转换文件夹下所有文件编码的函数类
Aug 06 PHP
PHP钩子与简单分发方式实例分析
Sep 04 PHP
php处理多图上传压缩代码功能
Jun 13 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
Mar 14 PHP
php中加密解密DES类的简单使用方法示例
Mar 26 PHP
ThinkPHP中调用PHPExcel的实现代码
Apr 08 #PHP
yii框架无限极分类的实现方法
Apr 08 #PHP
PHP下载远程图片的几种方法总结
Apr 07 #PHP
POST一个JSON格式的数据给Restful服务实例详解
Apr 07 #PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
Apr 07 #PHP
php 根据自增id创建唯一编号类
Apr 06 #PHP
php及codeigniter使用session-cookie的方法(详解)
Apr 06 #PHP
You might like
用PHP连接Oracle for NT 远程数据库
2006/10/09 PHP
PHP 实用代码收集
2010/01/22 PHP
php的sso单点登录实现方法
2015/01/08 PHP
PHP封装curl的调用接口及常用函数详解
2018/05/31 PHP
laravel批量生成假数据的方法
2019/10/09 PHP
单独使用CKFinder选择图片的方法
2010/08/21 Javascript
关于UTF-8的客户端用AJAX方式获取GB2312的服务器端乱码问题的解决办法
2010/11/30 Javascript
javascript延时加载之defer测试
2012/12/28 Javascript
使用js实现关闭js弹出层的窗口
2014/02/10 Javascript
深入分析JQuery和JavaScript的异同
2014/10/23 Javascript
JavaScript设计模式之外观模式介绍
2014/12/28 Javascript
详解nodejs与javascript中的aes加密
2016/05/22 NodeJs
详解JavaScript中this关键字的用法
2016/05/26 Javascript
vue.js中v-on:textInput无法执行事件问题的解决过程
2017/07/12 Javascript
vue基础之事件v-onclick=&quot;函数&quot;用法示例
2019/03/11 Javascript
JavaScript中的一些实用小技巧总结
2019/04/07 Javascript
jquery实现垂直无限轮播的方法分析
2019/07/16 jQuery
Vue插件之滑动验证码
2019/09/21 Javascript
JavaScript 链表定义与使用方法示例
2020/04/28 Javascript
python自动安装pip
2014/04/24 Python
Python基于多线程实现抓取数据存入数据库的方法
2018/06/22 Python
Python后台开发Django的教程详解(启动)
2019/04/08 Python
python批量识别图片指定区域文字内容
2019/04/30 Python
如何用Python来理一理红楼梦里的那些关系
2019/08/14 Python
详解Python图像处理库Pillow常用使用方法
2019/09/02 Python
python随机模块random的22种函数(小结)
2020/05/15 Python
python操作toml文件的示例代码
2020/11/27 Python
HTML5 客户端数据库简易使用:IndexedDB
2019/12/19 HTML / CSS
总经理秘书岗位职责
2014/03/17 职场文书
中国梦我的梦演讲稿
2014/04/23 职场文书
企业总经理任命书
2014/06/05 职场文书
关爱老人标语
2014/06/21 职场文书
毕业生的自我鉴定表范文
2019/05/16 职场文书
python函数指定默认值的实例讲解
2021/03/29 Python
Pytorch中的学习率衰减及其用法详解
2021/06/05 Python
MySQL中正则表达式(REGEXP)使用详解
2022/07/07 MySQL