无法识别的颜色`00000f'与转换命令

时间:2014-11-26 08:44:48

标签: php shell command imagemagick

我在尝试运行convert命令时收到错误。这是命令。

convert -colorspace rgb 10338_1.ai -transparent 00000f 10338_1.png

我收到的错误是

convert: unrecognized color `00000f' @ color.c/GetColorInfo/965.

任何解决方案?

3 个答案:

答案 0 :(得分:2)

颜色应以HTML表示法给出,并在其前面加上哈希:

convert -colorspace rgb 10338_1.ai -transparent '#00000f' 10338_1.png

答案 1 :(得分:1)

前一个答案对于标签是正确的。有关详细信息,请参阅http://www.imagemagick.org/script/color.php

答案 2 :(得分:1)

我们可以通过查看直方图来分析您的图像,如下所示:

convert a.ps -format "%c" histogram:info:
608007: (    0,    0,    0,    0) #0000000000000000 cmyk(0,0,0,0)
 58793: (    0,    0,    0,65535) #000000000000FFFF cmyk(0,0,0,255)
  6551: (    0,    0,    0,34952) #0000000000008888 cmyk(0,0,0,136)
  5095: (    0,    0,    0,48059) #000000000000BBBB cmyk(0,0,0,187)
  4350: (    0,    0,    0,17476) #0000000000004444 cmyk(0,0,0,68)
  3297: (    0,    0,    0,61166) #000000000000EEEE cmyk(0,0,0,238)
  2897: (    0,    0,    0, 4369) #0000000000001111 cmyk(0,0,0,17)

首先,您注意到它位于CMYK色彩空间中,而不是RGB中。您可以看到主要颜色是黑色,具有608007像素,并且图像中的所有其他颜色实际上只是黑色阴影,但CMY组件的所有颜色都为零。这意味着你只需将黑色提取为灰度图像就可以失去任何东西:

convert a.ps -channel K out.png

enter image description here

也许现在你可以做你想要的,例如你可以像这样设置透明的白色像素:

convert out.png -transparent white result.png