2013-04-04 48 views
1

在PHP上使用imagemagick壓縮圖像時,結果變成粉紅色。當使用imagemagick壓縮圖像時,圖像變成粉紅色(PHP)

$im = new Imagick(); 

$imgsrc = file_get_contents($imgFilepathIn); 
$im->readImageBlob($imgsrc);  

$im->setImageColorspace(255); 
$im->setImageCompression(Imagick::COMPRESSION_JPEG); 
$im->setImageCompressionQuality(90);  

$im->setImageFormat('jpeg');     
$im->writeImage($imgFilepathOut); 

回答

1

問題是jpg(粉紅色)的默認透明度顏色。

我們可以通過明確設置新的透明度/背景顏色來克服這一點。

$im->setBackgroundColor(new ImagickPixel('transparent')); 

而且似乎也像

$im->setImageColorspace(255); 

有時可能會產生問題