0

PHPでPhotoshopのグレースケール/彩度を下げる機能を複製する方法を探しています。サーバーにMagickWandをインストールしています。

さまざまな方法(ピクセルの反復を含む)を試しましたが、変更した画像をフォトショップで開くと、コントラストが常に変更されます(明るくなります)。

埋め込まれたカラープロファイルが保存されていないことに関係があるのではないかと思いますか?

$resource = NewMagickWand();
MagickReadImage( $resource, $file);
MagickQuantizeImage( $resource, 16772216, MW_GRAYColorspace, 8, true, true );

header( 'Content-Type: image/jpeg' );
MagickEchoImageBlob( $resource );

PHPを介して実行できる真のグレースケールを知っている人はいますか?ソリューションはImagemagickを使用する必要はありません

感謝

4

1 に答える 1

0

imagemagickを使用して画像をグレースケールに変換します

$resource = NewMagickWand();
MagickReadImage( $resource, $file);
$colors = MagickGetImageColors( $resource );
MagickQuantizeImage( $resource, $colors, MW_GRAYColorspace, 8, true, true );
MagickGetImageProfile( $resource , 'ICC');
//MagickModulateImage( $resource, 90, 0, 0); 
//MagickContrastImage( $resource, 2 );
MagickProfileImage( $resource, '*' , 'NULL');
MagickProfileImage( $resource, 'ICC' , file_get_contents('ICC/sGray.icc'));

header( 'Content-Type: image/jpeg' );
MagickEchoImageBlob( $resource );

ここに灰色のプロファイルへのリンクがありますhttp://www.mediafire.com/?jxlwfyjzjzj

于 2011-04-06T07:20:43.957 に答える