我用php imagemagick创建了一个cmyk图像,但是在photoshop上cmyk的颜色是不同的吗?
需要帮助! 我用php imagemagick创建了一个cmyk图像,但在photoshop上cmyk的颜色是不同的!e、 g:设置ImagickPixel颜色cmyk(0,0,0100)(黑色),但在photoshop上找到了cmyk(61,61,61,0)。我用php imagemagick创建了一个cmyk图像,但是在photoshop上cmyk的颜色是不同的吗?,php,imagemagick,cmyk,Php,Imagemagick,Cmyk,需要帮助! 我用php imagemagick创建了一个cmyk图像,但在photoshop上cmyk的颜色是不同的!e、 g:设置ImagickPixel颜色cmyk(0,0,0100)(黑色),但在photoshop上找到了cmyk(61,61,61,0)。 为什么?如何设置正确的cmyk颜色?您需要将颜色空间设置为cmyk,否则您的像素将转换为RGB $img->setImageColorspace(Imagick::COLORSPACE_CMYK); 另外,请确保您使用的文件类
为什么?如何设置正确的cmyk颜色?您需要将颜色空间设置为cmyk,否则您的像素将转换为RGB
$img->setImageColorspace(Imagick::COLORSPACE_CMYK);
另外,请确保您使用的文件类型支持CMYK。(例如,jpg,.tif)
编辑
看来Imagick有个bug。
在修复之前,您可以尝试使用transformImageColorspace
来解决此问题
$draw = new \ImagickDraw();
$fillColor = new \ImagickPixel();
$fillColor->setColor('cmyk(0%,0%,0%,100%');
$draw->setFillColor($fillColor);
$draw->rectangle(100, 100, 400, 400);
$img = new \Imagick();
$img->newImage(500, 500, 'white');
$img->drawImage($draw);
$img->transformImageColorspace(Imagick::COLORSPACE_CMYK);
$img->setImageFormat("jpg");
header('Content-Type: image/'.$img->getImageFormat());
echo $img;
我已经设置了颜色空间,文件类型为.jpg,photoshop显示图像为CMYK颜色模式。是的,CMYK颜色空间对ImagickDraw无效,但修复了错误。您的解决方案对我有效,但如果需要打印更多颜色,则会出现颜色问题。@hcoat您的解决方案有效吗?请看我的问题这是我的代码: