Php 无法识别的颜色“00000 F';使用Convert命令

Php 无法识别的颜色“00000 F';使用Convert命令,php,shell,command,imagemagick,Php,Shell,Command,Imagemagick,尝试运行convert命令时出现错误。这是命令 convert -colorspace rgb 10338_1.ai -transparent 00000f 10338_1.png 我得到的错误是 convert: unrecognized color `00000f' @ color.c/GetColorInfo/965. 有解决方案吗?颜色应以HTML表示法给出,并在前面加上哈希: convert -colorspace rgb 10338_1.ai -transparent '#000

尝试运行convert命令时出现错误。这是命令

convert -colorspace rgb 10338_1.ai -transparent 00000f 10338_1.png
我得到的错误是

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

有解决方案吗?

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

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

颜色应以HTML符号表示,并在前面加上哈希:

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

关于hashtag,前面的答案是正确的。有关更多信息,请参阅

关于标签,前面的答案是正确的。有关更多信息,请参阅

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

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)
convert a.ps -channel K out.png
convert out.png -transparent white result.png
首先,您注意到它位于CMYK颜色空间中,而不是RGB。您可以看到,主要颜色是黑色,有608007个像素,图像中的所有其他颜色实际上只是黑色的阴影,但所有CMY组件的值都为零。这意味着您只需将黑色提取到如下灰度图像中,就不会损失任何东西:

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)
convert a.ps -channel K out.png
convert out.png -transparent white result.png

也许现在您可以做您想做的事情,例如,您可以将白色像素设置为透明,如下所示:

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)
convert a.ps -channel K out.png
convert out.png -transparent white result.png

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

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)
convert a.ps -channel K out.png
convert out.png -transparent white result.png
首先,您注意到它位于CMYK颜色空间中,而不是RGB。您可以看到,主要颜色是黑色,有608007个像素,图像中的所有其他颜色实际上只是黑色的阴影,但所有CMY组件的值都为零。这意味着您只需将黑色提取到如下灰度图像中,就不会损失任何东西:

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)
convert a.ps -channel K out.png
convert out.png -transparent white result.png

也许现在您可以做您想做的事情,例如,您可以将白色像素设置为透明,如下所示:

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)
convert a.ps -channel K out.png
convert out.png -transparent white result.png


是的,我可以这样做,但你知道,通过使用这个png图像生成的是白色背景。不透明的背景。如果我改为写白色,它会生成完美的图像,但也会去除图像的白色,谢谢你的回答。从这篇文章来看,这毫无意义。颜色#00000 F几乎是黑色,而不是白色。@MarkSetchell谁告诉了白色?OP在他的第一个评论中提到了白色。是的,我可以这样做,但你知道通过使用它生成的png图像是白色背景。不透明的背景。如果我改为写白色,它会生成完美的图像,但也会去除图像的白色,谢谢你的回答。从这篇文章来看,这毫无意义。颜色#00000 F几乎是黑色,而不是白色。@MarkSetchell谁告诉了白色?OP在他的第一个评论中提到了白色。是的,我可以这样做,但你知道通过使用它生成的png图像是白色背景。不透明的背景。若我改为写白色,它会生成完美的但也会去除图像的白色。这是原始帖子,谢谢你的回答。是的,我可以这样做,但你知道,通过使用这个png图像生成的是白色背景。不透明的背景。若我改为写白色,它会生成完美的但也会去除图像的白色。这是原始帖子,谢谢你的回答。你到底想做什么?我正在尝试将透明AI图像转换为透明png图像。这是帖子,请将链接发布到你的图像。你到底想做什么?我正在尝试将透明AI图像转换为透明png图像。这是帖子,请发布链接hi mark,谢谢你的回复,但是通过这种语法,我无法生成透明图像,因为AI文件是透明的,并且生成的png是白色背景。上面的语法在我的本地机器上运行良好。希望这个链接能帮助你理解,也能看到图片,是由我的本地机器生成的,它是透明的。谢谢你的回复,但是通过这个语法,我无法生成透明的图片,因为AI文件是透明的,并且生成的png带有白色背景。上面的语法在我的本地机器上运行良好。希望这个链接能帮助你理解,也能看到图片,是由我的本地机器生成的,是透明的