gpt4 book ai didi

php - 图像复制黑色背景

转载 作者:搜寻专家 更新时间:2023-10-31 20:42:18 27 4
gpt4 key购买 nike

我搜索并尝试了我找到的所有方法,但我无法管理。

我想做的是:将两个预生成的(使用 php gd)图像并排放置,并在它们之间留一个空格。

我用这些行创建了这两个图像:

$sideMask = imagecreatefrompng($maskFile);
imagealphablending($sideMask, false);
imagesavealpha($sideMask, true);

$image_blank = imagecreatetruecolor($newWidth,$newHeight);

$white = imagecolorallocate($image_blank, 255, 255, 255);
imagefill($image_blank, 0, 0, $white);

imagecopy($image_blank, $ResizedSourceFile, 0, 0, 0, 0, $newWidth, $newHeight);
imagecopy($image_blank, $sideMask, $maskX, 0, 0, 0, $maskWidth, $maskHeight);

$image_blank_mask = imagecreatetruecolor($maskWidth,$maskHeight);

imagecopy($image_blank_mask, $image_blank, 0, 0, $maskX, 0, $maskWidth, $maskHeight);

return $image_blank_mask;

并尝试将它们与这些结合起来:

$maxHeight = 1626;
$sideSpace = 35;

$maxWidth = 1522 + $sideSpace;

$Img01 = $Img01Created;
$Img02 = $Img02Created;

$BothSideBlank = imagecreatetruecolor($maxWidth,$maxHeight);
$white = imagecolorallocate($BothSideBlank, 255, 255, 255);
imagefill($BothSideBlank, 0, 0, $white);

imagecopy($BothSideBlank, $Img01, 0, 0, 0, 0, $maxWidth, $maxHeight);
imagecopy($BothSideBlank, $Img02, (763+$sideSpace), 0, 0, 0, $maxWidth, $maxHeight);

imagejpeg($BothSideBlank, "Test.jpg",100);

使用此代码,图像之间有黑色背景。实际上图像背景的右侧是黑色的。如果我删除

imagecopy($BothSideBlank, $Img01, 0, 0, 0, 0, $maxWidth, $maxHeight);

这条线背景如我所料是白色的。但是如果我删除另一行并添加这一行。背景为黑色。

我已经尝试了所有方法,但无法成功。

我错过了什么吗?

会不会是因为生成这些图片的时候?

我们将不胜感激。

谢谢。

最佳答案

在“imagecopy”中使用正确的尺寸而不是“$maxWidth”和“$maxHeight”。

$size01 = getimagesize($Img01);
$size02 = getimagesize($Img02);

imagecopy($BothSideBlank, $Img01, 0, 0, 0, 0, $size01[0], $size01[1]);
imagecopy($BothSideBlank, $Img02, ($size01[0]+$sideSpace), 0, 0, 0, $size02[0], $size02[1]);

关于php - 图像复制黑色背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19380366/

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