我正在将内部使用图像魔术的JavaScript程序迁移到使用图形魔术的Windows批处理文件。
我无法成功使用convert -draw
命令。
我有几个非常简单的测试用例。第一个是
gm convert -size 1920x1080 xc:white -draw 'text 8,8 "Hello, world"' test.jpg
失败,并显示错误消息“不一致的图形基元(文本)”。
另一个
gm convert -size 1920x1080 xc:white -draw 'image over 8,8 0,0 "img.jpg"' test.jpg
失败,显示“不符合标准的图形图元(图像)”。
从命令行调用和从BAT文件内部调用时,它们都失败。
我试过使用带引号
"
和不带引号。我尝试使用
^
引号^"
进行转义。我试图转义单引号
^'
。我显然忽略了一些非常简单的东西,但我看不到。有任何想法吗?
编辑我做了一些尝试。
gm convert -size 1920x1080 xc:white -draw "'text 8,8 Hello'" test.jpg
gm convert -size 1920x1080 xc:white -draw "'text 8,8 \"Hello\"'" test.jpg
gm convert -size 1920x1080 xc:white -draw 'text 8,8 ^"Hello^"' test.jpg
gm convert -size 1920x1080 xc:white -draw "'text 8,8 ""Hello""'" test.jpg
但
gm convert -size 1920x1080 xc:white -draw "text 8,8 ""Hello"" " test.jpg
失败,显示“无法读取字体”
最佳答案
使用双引号:-draw“图像超过8,8,0,0”“img.jpg”“”吗?
关于windows - 尝试使用图形magick绘制文本或图像时出现 “non-conforming drawing primitive”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8700074/