2013-08-20 34 views
1

使用imagick和GD庫我試圖製作一個透明中心的正方形圖像。我試圖這樣做:如何使用GD或Imagick在非透明純色圖像內創建透明區域?

$img = imagecreatetruecolor($width, $height); 

imagefilledrectangle($img, $left, $top, $right, $bottom, imagecolorallocate($img, 255, 255, 255)); 
imagecolortransparent($img, imagecolorallocate($img, 255, 255, 255)); 

ob_start();  
ini_set('memory_limit', '-1');    
imagepng($img, './imagecolortransparent.png'); 
$blob = ob_get_clean();  

但是最終的結果對於中心小盒子來說始終不透明。我在某處做錯了嗎?任何幫助將不勝感激:(。

enter image description here

回答

1

你必須激活imagesavealpha得到透明度。

imagesavealpha($img,true); 
imagepng($img, './imagecolortransparent.png');