ImageMagickでCMYK=>RGB変換
ImageMagickでCMYKからRGBに変換するための情報が少なかったためメモ
要ImageMagic&Imagick
単純にカラースペースを指定した場合
$image -> readImage('cmyk.eps');
$image ->setImageColorspace(Imagick::COLORSPACE_SRGB);
//反転してしまう
$image ->negateImage(false);
//反転してあげればとりあえず見れるようにはなるが、K版が反映されていないようだ。
sRGBのプロファイルを読み込んだ場合
$image -> readImage('cmyk.eps');
//sRGBのプロファイルを読み込む
$sRGBPath = '../sRGB.icm';
$sRGB = file_get_contents($sRGBPath);
$image->profileImage('icc', $sRGB);
$image->setImageColorspace(Imagick::COLORSPACE_SRGB);
//プロファイルの埋め込まれたCMYKは変換できるが、プロファイル無しのCMYKは反転
CMYKのプロファイルも読み込んだ場合
$image -> readImage('cmyk.eps');
//CMYKのプロファイルを読み込む
$CMYKPath = '../JapanColor2001Coated.icc';
$CMYK = file_get_contents($CMYKPath);
$image->profileImage('icc', $CMYK);
//sRGBのプロファイルを読み込む
$sRGBPath = '../sRGB.icm';
$sRGB = file_get_contents($sRGBPath);
$image->profileImage('icc', $sRGB);
$image->setImageColorspace(Imagick::COLORSPACE_SRGB);
//プロファイルの有無に関わらず変換
とりあえずこれでRGBにはなるが、どんな画像かはわかる程度で、色は全く当てになりません。
GDを使った方がまだましのようです。
この記事へのコメントはありません。