【发布时间】:2018-11-22 21:56:10
【问题描述】:
我可以这样做在图像上绘制一个红色矩形:
convert original.png -fill red -draw "rectangle 10,20 150,40" result.png
150,40 是右下角坐标。但是,如果我在那里使用 %[fx:...] 运算符,如下所示:
convert original.png -fill red -draw "rectangle 10,20 %[fx:w-30],40" result.png
%[fx:w-30] 应该计算为图像宽度 - 30。
但是我遇到了一个错误:
转换:不符合标准的绘图图元定义“矩形”@error/draw.c/DrawImage/4227。
我也尝试过单引号 (') 而不是双引号 ("),但这并没有什么区别。
我的 imagemagick 版本是 7.0.7-36。
我做错了什么?上例中%[fx:...]运算符的正确使用方法是什么?
【问题讨论】:
-
使用 ImageMagick 7 你应该使用“magick”而不是“convert”。
-
@GeeMack 谢谢,以前从未听说过。我的转换版本说 7.0.7-36 但显然
convert和magick之间存在差异。无论如何,它有效,谢谢! -
在 IM 7 中使用 convert 通常会调用 IM 6。在大多数命令中,IM 6 不支持 %[fx...] 计算。如果您设置了指向魔法的符号链接,则可以在 IM 7 中使用 convert。
标签: shell image-processing terminal imagemagick imagemagick-convert