In diesem Artikel wird erläutert, wie Sie die Vorder- und Rückseitenbilder eines Personalausweises in PHP zu einem Bild kombinieren. Außerdem können Sie dem Bild Wasserzeichen hinzufügen. Freunde, die es benötigen, können darauf verweisen.
Das Spezifische Der Code lautet wie folgt: Der vordere Teil ist der Nudelcode, gefolgt von einer versiegelten Funktion zur einfachen wiederholten Verwendung. Beachten Sie die Kommentare vor der Funktion. Da wir dieser Funktion nicht zu viele Parameter geben möchten, sind einige Konfigurationselemente in der Funktion fest codiert.
<?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; } ?>
Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
PHP String-Definitionsmethoden und ihre Unterschiede
Zusammenfassung der Definition und Verwendung von PHP-Substr-Funktionen
Das obige ist der detaillierte Inhalt vonSo kombinieren Sie mit PHP zwei Fotos der Vorder- und Rückseite eines Personalausweises zu einem Bild. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!