2014-02-21 7 views
0

Я пытаюсь объединить два изображения. featured7.png имеет прозрачный фон. Но окончательное изображение, как показано ниже с темной заплаткой:
enter image description hereimagecopymerge дает мне темный патч

Вот код: Пожалуйста, помогите:

$src = imagecreatefrompng('images/featured7.png'); 
$dest = imagecreatefromjpeg('images/1.jpg'); 
imagealphablending($dest, false); 
imagesavealpha($dest, true); 
imageColorAllocateAlpha($dest, 0, 0, 0, 127); 
imagecopymerge($dest, $src, 0, 0, 0, 0, 90, 90, 100); 
header('Content-Type: image/png'); 
imagepng($dest); 
imagedestroy($dest); 
imagedestroy($src); 

Нового модифицированный код ниже: но дают тот же результат, за исключением того, небольшое изображение перемещается в какой-то дополнительной правый центр:

$img1 = imagecreatefrompng('images/featured7.png'); 
$img2 = imagecreatefrompng('images/1.jpg'); 
$image = imagecreatefromjpeg("images/1.jpg"); // 
$image1 = imagecreatefrompng("images/featured7.png");// 
$size = getimagesize("images/featured7.png"); 
$overlay = imagecreatetruecolor(80, 80); 
$white = imagecolorallocate($overlay, 229, 229, 229); 
imagefilledrectangle($overlay, 0, 0, 80, 80, $white); 
imagecolortransparent($overlay,$white); 
imagecopy($overlay, $image1, (80-$size[0])/2, (80-$size[1])/2, 0, 0, $size[0],$size[1]); 
imagecopymerge($image, $image1, 280, 30, 0, 0, 80, 80, 100); 
header('Content-Type: image/png'); 
imagepng($image); 
imagedestroy($image); 

Вот два изображения:
enter image description here
enter image description here

ответ

1

Я встретил ту же проблему, прежде чем, и я люблю soluton, пожалуйста, см мой вопрос и ответ здесь:

PHP imagecopymerge source image's background change transparent to black в вас случай использования образца следующим образом:

$dit = imagecreatefromjpeg("./dst.jpg"); // 
$source = imagecreatefrompng("./source.png");// 
$size = getimagesize("./source.png"); 
imagecopy($dit, $source, 0,0, 0, 0, $size[0], $size[1]); 
header('Content-Type: image/jpeg'); 
imagejpeg($dit); 
imagedestroy($dit); 

enter image description here

+0

Я изменил код, но дал тот же результат: – Srikanta

+0

Я обновил код вверх, пожалуйста, проверьте .. thnx за вашу помощь, пожалуйста, сообщите мне далее .. – Srikanta

+0

@ Srikanta, отлично .. долго ждать, я напишу код для вас .. –