ImageMagick的convert命令:没有定义图片。

6

我尝试执行以下命令:

$ convert 1.png -filter 'Jinc ( +clone -negate -morphology Distance Euclidean -level 50%,-50% )' -morphology Distance Euclidean -compose Plus -composite -level 43%,57% -resize 12.5% 1.png

我得到的结果是:

转换:错误/convert.c/ConvertImageCommand/3187,未定义任何图像“1.png”。

但是它确实存在!我尝试启用调试选项执行该命令:

$convert 1.png -filter 'Jinc ( +clone -negate -morphology Distance Euclidean -level 50%,-50% )' -morphology Distance Euclidean -compose Plus -composite -level 43%,57% -resize 12.5% 1.png -debug all

我得到了这个输出:http://pastebin.com/gsw7KszH 我的ImageMagick配置有什么问题吗?我使用的是最新的macOS操作系统。

你从哪里得到那个命令的?它试图做什么? - Mark Setchell
由于输出图像与输入图像相同,问题可能出在输出图像上而非输入图像上——尝试更改输出名称以确认。在Linux类型系统中,需要用\转义(&)是否在Mac上也一样?但正如Mark所说,代码看起来有些奇怪。 - Bonzo
2
请检查 Ghostscript 软件包。如果您没有安装,请执行以下命令:brew install ghostscript - ThienSuBS
在OSX上安装Ghost Script并没有解决这个问题。 - Paul Kenjora
1
我曾经遇到过同样的问题,通过将输出文件名与输入文件名不同来解决了这个问题。 - Grasshopper
1个回答

1
你可以尝试在 合成操作符 后面指定文件名,像这样:
$ convert 1.png \
   -filter 'Jinc ( +clone -negate -morphology Distance Euclidean -level 50%,-50% )' \
   -morphology Distance Euclidean \
   -compose Plus \
   -composite 1.png \
   -level 43%,57% \
   -resize 12.5% 1.png

我认为你在断言“-composite”需要一个文件名方面是错误的。它仅仅执行了由前面的“-compose”操作符定义的任何操作,并将结果留在图像堆栈中。 - Mark Setchell

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接