2011-08-03 156 views
0

可能重複:
How to merge transparent PNG with image using PHP?PHP PNG圖像合成

我完全失去了這裏,這樣有利於將不勝感激。 我是PHP圖像處理新手。

我有兩個半透明的PNG文件,我想覆蓋另一個並輸出結果PNG。

謝謝先進。

編輯:

  1. GD,但我可以改變,如果需要的。
  2. 到目前爲止,我已經從互聯網上找到了我所能找到的。 它不起作用。


+0

您正在使用什麼庫? (例如GD,Imagick) – Yoshi

+0

發佈的解決方案不起作用。也許這是我的PHP版本。 –

+0

它是版本4.3 –

回答

1

imagecopymerge將是解決辦法

header("Content-Type: image/png"); 

$overlay = imagecreatefrompng("overlay.png"); 
$overlay_width = imagesx($overlay); 
$overlay_height = imagesy($overlay); 
$im = imagecreatefrompng("firstimage.png"); 
$width = imagesx($im); 
$height = imagesy($im); 
$dest_x = 0; 
$dest_y = 0; 
imagecopymerge($im, $overlay, $dest_x, $dest_y, 0, 0, $overlay_width, $overlay_height, 100); 

imagepng($im); 
+0

謝謝,但生成的圖像有黑色背景。 –

+0

我剛剛嘗試過,並且完美地工作,我測試的圖像具有透明背景..最終圖像仍然具有透明背景..我的PHP版本是5.2.10,使用gd 2.0.34,也許它來自您的php版本.. –