我在Windows上使用ImageMagick的命令行定义将数百个彩色矩形添加到空白图像(直方图)。命令的长度超过了8192个字符的限制。我有数百个这样的命令:
-fill rgb(188,161,161) -draw "rectangle 1,106 4,19"
ImageMagick文档说几个命令可以放在一个文件中,然后读取。在测试时,这些必须是相同的命令类型,即我要为draw
命令创建一个文件,为fill
命令创建一个文件。但是,着色将不起作用,因为正确的fill
命令未链接到相关的draw
命令。
magick -size 1920x108 xc:white -fill @fill.txt -draw @draw.txt hist.png
有人知道解决方法或任何其他选项吗?我认为在Windows批处理文件中使用命令可能有效,但这似乎也受到8192个字符的限制。
答案 0 :(得分:1)
您可能会发现 Magick矢量图形(MVG)更适合您的需求:
convert -size 1920x1080 xc:gray90 -draw @draw.txt result.png
文件draw.txt
包含:
fill cyan rectangle 10,10 1800,400
fill magenta rectangle 10,450 1750,800
fill yellow rectangle 10,850 1850,1000
答案 1 :(得分:0)
以下摘自MS link:
在运行Microsoft Windows XP或更高版本的计算机上,最大长度 您可以在命令提示符处使用的字符串是8191 字符。在运行Microsoft Windows 2000或Windows NT的计算机上 4.0,您可以在命令提示符处使用的字符串的最大长度为2047个字符。
所以基本上,它是命令行的限制,而不是imagemagick。您是否有可能将任务分成两部分,然后将这两个步骤生成的两个图像合并到一个结果图像上?