我对php和imagick有一些问题,我想将一些图像从rgb系统转换为cmyk,但我只有黑色/非背景。
$icc_cmyk = file_get_contents('USWebUncoated.icc');
$img->profileImage('icc', $icc_cmyk);
$img->setImageColorspace(12);
if ($php_vs < 5.3) {
//ADJUST GAMMA BY 20% for 5.2.x
$img->levelImage(0, 2.0, $range['quantumRangeString']);
} else {
//php 5.3 hack FOR INVERTED COLORS
$img->negateImage(false, Imagick::CHANNEL_ALL);
}
$img->stripImage();
//$img->setImageColorspace(Imagick::COLORSPACE_CMYK);
$img->writeImage('cmyk.png');
答案 0 :(得分:1)
好吧我有一些决心,但我不知道它有效,如果有人能尝到它我会非常感激:)
$img->setImageColorspace(13);
$icc_rgb = file_get_contents('AdobeRGB1998.icc');
$img->profileImage('icc', $icc_rgb);
unset($icc_rgb);
$icc_cmyk = file_get_contents('USWebUncoated.icc');
$img->profileImage('icc', $icc_cmyk);
$img->setImageColorspace(12);
unset($icc_cmyk);
$img->setimagecolorspace(Imagick::COLORSPACE_CMYK);
$img->stripImage();
$img->writeImage('cmyk.png');
答案 1 :(得分:0)
使用此有效的RGB来通过Php将CMYK图像
$icc_cmyk = file_get_contents('images/CoatedFOGRA27.icc');// Your Cmyk ICC Profile
$img->profileImage('icc', $icc_cmyk);
$img->transformimagecolorspace(Imagick::COLORSPACE_CMYK);
$img->writeImage('cmyk.jpg');// Save as jpg or jpeg`