我在运行ImageMagick mogrify处理多个文件时遇到了一个奇怪的问题。我使用转换字符串对图像进行多次变换,从而生成缩略图。这个带有转换字符串的命令在单个文件上运行良好,但是在批量文件上运行时有时会失败。以下是命令(Windows命令行):
"C:\Program Files\ImageMagick-6.3.5-Q16\mogrify" \
-format jpg \
-thumbnail 400x400">" \
-background white \
-gravity center \
-extent 400x400 \
-draw "image src-over 0,0 0,0 '//dell1/Oracle/files/watermark.png'" \
-path \\dell1\Oracle\files\pictures\cj4uoveomiggda97kmqttn0400 \
\\dell1\Oracle\files\pictures\59\59p5huflk2cnv9drf3r1d65ef9_wc \
\\dell1\Oracle\files\pictures\7v\7vi3q26cdidk8bproslhhmlkab_wc \
\\dell1\Oracle\files\pictures\ft\ft0iqkjk08cli8k0iltgmdmfo5_wc
当插入水印时,出现"mogrify: Non-conforming drawing primitive definition `image'."错误提示。但是我发现只有当更改要处理的3个文件的顺序时,mogrify才能正常运行,这非常奇怪。我不知道为什么会出现这种情况,也不知道如何解决。
PS:我从Java应用程序中执行此命令,因此使用重复调用convert命令的批处理文件对我来说不可接受。
如有任何线索,敬请赐教,万分感谢。