0
我试过其他的解决方案,但它没有奏效,所以我粘贴在这里我的代码,可以复制,但不能用透明度保存它[透明部分变白]!合并透明PNG图像与其他PNG图像 - PHP
<?php
$dest = imagecreatefrompng('album.png');
imagealphablending($dest, true);
imagesavealpha($dest, true);
$offset = 10;
$friends = array ('captcha1.png', 'captcha2.png', 'captcha3.png', 'captcha4.png', 'captcha5.png', 'captcha6.png', 'captcha7.png', 'captcha8.png', 'captcha9.png');
$baby = array ('baby1.png', 'baby2.png', 'baby3.png', 'baby4.png');
$ids = getID(0, count($friends)-1, 3);
for ($i=0;$i<3;$i++)
{
$index = $ids[$i];
$src = imagecreatefrompng($friends[$index]);
$offsetY = imagesx($src);
imagecopymerge($dest, $src, 10, $offset, 0, 0, $offsetY, imagesy($src), 100);
$src = imagecreatefrompng($baby[rand(0,3)]);
imagealphablending($src, true);
imagesavealpha($src, true);
imagecopymerge($dest, $src, ($offsetY + 250), $offset, 0, 0, imagesx($src),imagesy($src), 99);
$offset = $offset + imagesx($src) + 45;
}
header('Content-Type: image/png');
imagealphablending($dest, true);
imagesavealpha($dest, true);
imagepng($dest);
imagedestroy($dest);
imagedestroy($src);
function getID($min, $max, $quantity) {
$numbers = range($min, $max);
shuffle($numbers);
return array_slice($numbers, 0, $quantity);
}
?>
我也试图与** imagealphablending($ SRC,FALSE); ** – Sourav 2011-06-03 13:56:33