2017-01-11 16 views
2

flatternImages()関数は廃止予定ですので使用できません。"Imagick :: flattenImagesメソッドは推奨されておらず、使用は避けてください"

私は

$im->setImageAlphaChannel(\Imagick::ALPHACHANNEL_REMOVE); 
$im->mergeImageLayers(\Imagick::LAYERMETHOD_FLATTEN); 

を使用する必要があります。しかしALPHACHANNEL_REMOVE定数が定義されていません。

どうすればこの問題を解決できますか?

P.S.

"Unable to set image alpha channel"

+0

あなたはImagickとImageMagickのあなたのどのバージョンを言うことができますALPHACHANNEL_REMOVEがそこにいないことはかなり古いことが必要です。 – Danack

答えて

0

this answer on php.netによると、あなたが前3.2.0b2にImageMagickのバージョンを使用する必要があります。 私はImagick :: ALPHACHANNEL_REMOVE \代わりに11を使用して、エラーを取得しようとしました。

この時点で、あなたはライブラリの最新バージョンにアップグレードするか、一定Imagick::ALPHACHANNEL_REMOVEに割り当てられた値を使用するか(11である):

$im->setImageBackgroundColor('white'); 
$im->setImageAlphaChannel(11); // Imagick::ALPHACHANNEL_REMOVE 
$im->mergeImageLayers(Imagick::LAYERMETHOD_FLATTEN); 
関連する問題