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配置心得包含MYSQL5乱码解决
Nov 20 PHP
php基础知识:类与对象(4) 范围解析操作符(::)
Dec 13 PHP
php中对xml读取的相关函数的介绍一
Jun 05 PHP
php PDO中文乱码解决办法
Jul 20 PHP
一贴学会PHP 新手入门教程
Aug 03 PHP
php牛逼的面试题分享
Jan 18 PHP
php生成缩略图填充白边(等比缩略图方案)
Dec 25 PHP
php获取中文拼音首字母类和函数分享
Apr 24 PHP
PHP文件读取功能的应用实例
May 08 PHP
Laravel5.* 打印出执行的sql语句的方法
Jul 24 PHP
使用laravel根据用户类型来显示或隐藏字段
Oct 17 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
Dec 20 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 多个submit提交表单 处理方法
2009/07/07 PHP
PHP项目开发中最常用的自定义函数整理
2010/12/02 PHP
PHP跨时区(UTC时间)应用解决方案
2013/01/11 PHP
thinkphp中连接oracle时封装方法无法用的解决办法
2013/06/17 PHP
解析PHP高效率写法(详解原因)
2013/06/20 PHP
浅谈php数组array_change_key_case() 函数和array_chunk()函数
2016/10/22 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
2018/03/15 PHP
PDO::prepare讲解
2019/01/29 PHP
PHP大文件分块上传功能实例详解
2019/07/22 PHP
学习YUI.Ext 第三天
2007/03/10 Javascript
基于Jquery的回车成tab焦点切换效果代码(Enter To Tab )
2010/11/14 Javascript
js对象之JS入门之Array对象操作小结
2011/01/09 Javascript
js 分页全选或反选标识实现代码
2011/08/09 Javascript
IE中jquery.form中ajax提交没反应解决方法分享
2012/09/11 Javascript
实现只能输入数字的input不用replace方法
2013/09/12 Javascript
JavaScript的strict模式与with关键字介绍
2014/02/08 Javascript
jQuery中click事件用法实例
2014/12/26 Javascript
JavaScript实现表格点击排序的方法
2015/05/11 Javascript
Jquery 效果使用详解
2015/11/23 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
2016/05/31 Javascript
Node.js如何自动审核团队的代码
2016/07/20 Javascript
jQuery设置聚焦并使光标位置在文字最后的实现方法
2016/08/02 Javascript
JS实现控制图片显示大小的方法【图片等比例缩放功能】
2017/02/18 Javascript
angular 用Observable实现异步调用的方法
2018/12/27 Javascript
JS实现获取数组中最大值或最小值功能示例
2019/03/02 Javascript
关于vue表单提交防双/多击的例子
2019/10/31 Javascript
Python面向对象编程中的类和对象学习教程
2015/03/30 Python
介绍Python中几个常用的类方法
2015/04/08 Python
Python文档生成工具pydoc使用介绍
2015/06/02 Python
如何用python写个模板引擎
2021/01/14 Python
FILA斐乐中国官方商城:意大利运动品牌
2017/01/25 全球购物
美国专业级皮肤病和spa品质护肤品的高级零售网站:SkinCareRx
2017/02/06 全球购物
美国经典刺绣和字母儿童服装特卖:Smocked Auctions
2018/07/16 全球购物
测绘工程本科生求职信
2013/10/10 职场文书
求职者怎样写自荐信
2014/04/13 职场文书
教师党的群众路线教育实践活动个人整改措施
2014/11/04 职场文书