【发布时间】:2015-07-09 00:42:59
【问题描述】:
我有以下图片188_f.jpg:
还有如下代码:
<?php
$ss = "convert 188_f.jpg -quality 95% -set colorspace RGB -colorspace CMYK 188_f_cmyk.jpg 2>&1";
echo ">" . $ss . "<br />";
echo system($ss);
?>
当我运行这段代码时,我得到这个图像作为输出:
这确实是 CMYK 格式,但是当以 100% 观看时,质量会显着下降。 (不知道SE在上传的时候有没有做任何转换,所以我通过FTP上传了上面的图片,所以如果需要的话你可以直接检查它们。)
我尝试移动质量参数,带和不带百分号,我还查看了 Imagick 指南,但我找不到任何解释质量下降的原因。输出文件具有相同的像素数。
编辑:除了更改色彩空间选项外,不对脚本进行其他更改,结果如下:
编辑 2: 还尝试了多个不同的配置文件,使用这个:
convert 188_f.jpg -quality 95% -profile profiles\\UncoatedFOGRA29.icc -colorspace CMYK 188_f_cmyk.jpg 2>&
他们都没有摆脱像素化。
【问题讨论】:
-
删除色彩空间选项后会发生什么?
-
@CBroe 好问题。编辑了我的帖子。
-
imagemagick.org/script/command-line-options.php#colorspace: “要更准确地与线性 RGB、CMYK 或灰度色彩空间进行颜色转换,请使用 -profile 选项。” – 看看是否这可以提供帮助。 (不要问我要尝试什么个人资料名称,我没有这方面的经验。)
-
@CBroe 我尝试了多种不同的配置文件,它们确实稍微改变了颜色,但它仍然是像素化的。
-
你想要完成什么?我还指出,在重新压缩 JPEG 时,您应该使用可能的最佳质量设置(100%?),希望使用量化表中的所有 1。
标签: imagemagick jpeg imagemagick-convert