gpt4 book ai didi

php - 在 PHP 中合并两张图片并将其另存为一张(一张透明背景)

转载 作者:行者123 更新时间:2023-12-05 07:44:03 35 4
gpt4 key购买 nike

我有以下场景。有两个大小完全相同的 .png 图像。一张是背景图片,另一张是叠加图片。

叠加层由透明背景和白色字母组成。

我正在尝试将这两张图片合二为一,以便最终在背景图片上显示白色文本。

我用这段代码试过了:

$image_1 = imagecreatefrompng('newimages/'.$overla);

$imgFinal = imagecreatefrompng('imagebackrgounds/background.png');

imagealphablending($imgFinal, true);
imagesavealpha($imgFinal, false);

imagecopy($imgFinal, $image_1, 0, 0, 0, 0, 600, 579);

imagepng($imgFinal, 'new/new.png');

上面的代码只保存了一张白色的图片。我在这里做错了什么?有人有工作代码吗?

这是背景图片: enter image description here

这是透明背景的图像(它应该在背景之上) enter image description here

最佳答案

解决方法:

imagecolortransparent($image_1,imagecolorat($image_1,0,0));

完整代码:

$image_1 = imagecreatefrompng('newimages/'.$overla);
imagecolortransparent($image_1,imagecolorat($image_1,0,0));

$imgFinal = imagecreatefrompng('imagebackrgounds/background.png');

imagealphablending($imgFinal, true);
imagesavealpha($imgFinal, false);

imagecopy($imgFinal, $image_1, 0, 0, 0, 0, 600, 579);

imagepng($imgFinal, 'new/new.png');

关于php - 在 PHP 中合并两张图片并将其另存为一张(一张透明背景),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43190481/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com