我有两个系统,一个是CentOS 6.2 Final,另一个是Ubuntu 14.04,它们都安装了 ImageMagick 。安装了以下版本。
在Ubuntu上:
Version: ImageMagick 6.7.7-10 2014-03-06 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
功能:OpenMP
On Centos:
Version: ImageMagick 6.5.4-7 2014-02-10 Q16 OpenMP http://www.imagemagick.org
Copyright: Copyright (C) 1999-2009 ImageMagick Studio LLC
我在两个系统上使用了相同的命令,它们会产生不同的结果。
命令:
convert \
~/source.png \
\( -clone 0 -fill 'rgba(50,129,75,5)' -colorize 100% \) \
-channel rgba \
-alpha on \
-compose Multiply \
-composite \
out.png
CentOS输出:
Ubuntu输出
我不确定为什么两个系统都会出现这样的色差。请帮忙。
CentOS上的输出是预期的输出。
source.png :
使用 -colorspace RGB 选项输出(这不是所需的结果):
-colorspace sRGB :
答案 0 :(得分:3)
我认为你的colourspace存在问题,你可能需要明确地设置它们以强制ImageMagick执行你的意思,因为你正在运行的两个版本之间的默认值发生了变化。
我怀疑您想要在线性(RGB)色彩空间中进行所有操作,但可能希望将结果图像放在非线性sRGB色彩空间中,因此您需要强制它们像这样:
convert source.png -colorspace RGB \
\( -clone 0 -fill 'rgba(50,129,75,5)' -colorize 100% \) \
-channel rgba -alpha on -compose Multiply \
-composite -colorspace sRGB out.png