imagecreatefrompng 将 2 张 PNG 图片合并为一张 PNG php

imagecreatefrompng merge 2 PNG images into one PNG php

我正在编写 php 代码,将 2 个 png 图像合并为一个图像。实际上它是学校 ID 项目。我在学校卡上放个人资料照片的地方。

$profile = imagecreatefrompng("profile.png");
//imagealphablending($profile,true);
//imagesavealpha($profile, true);
imagecopy($card,$profile,850,280,0,0,1180,700);

imagepng($card,"output.png",9);
echo '<img src="output.png" />';

card

profile

output

我如何去除黑色…………我尝试了 Whosebug 和 google 上的所有解决方案,但没有成功

您应该正确地告诉系统学生照片的宽度和高度,否则系统会在合并两张照片时将黑色作为背景色。

对于PHP,您可以使用getimagesize函数来获取正确的宽度和高度。

所以代码是:

<?php
$image_1 = imagecreatefrompng('HIjbp.png');
$image_2 = imagecreatefrompng('Uk5V8.png');

list($width, $height, $type, $attr) = getimagesize('Uk5V8.png');


imagecopy($image_1,$image_2,850,280,0,0,$width,$height);

imagepng($image_1, 'result.png');

echo '<img src="result.png" />';

?>

工作版本在这里:

http://www.createchhk.com/SOanswers/SO_20220413.php