我正在运行下面的DOS批处理文件。我的操作系统是带有3 GB内存的Windows 7。在Windows资源管理器中,我双击批处理文件,它可以使用标准尺寸图像正常运行,并将图像组合成一个更大的图像。当我做的一切完全相同,除了更大的.jpg图像文件是1 MB,代码运行但产生一个零字节文件。批处理文件可以超时吗?你认为这是DOS或ImageMagick的限制吗?
SETLOCAL EnableDelayedExpansion
SET MONTAGE="C:\Program Files\ImageMagick\Montage"
...
%MONTAGE% *.jpg -geometry +0+0 -tile 4x1 rows56-59-cols-32261-32400combined.jpg
答案 0 :(得分:2)
ImageMagick本身可以支持64位操作系统上的exa像素图像,请参阅规范here。不幸的是,JPEG无法支持任何一侧大约64,000像素的图像。
一种解决方案可能是使用不同的outout格式,它支持更大的图像,ImageMagick将为您静静地转换为该格式。例如,PNG
格式使用4个字节作为宽度和高度,因此它应支持任何一侧最多约4,000,000,000像素。所以你会这样做
montage *.jpg ... output.png
注意:强>
PNG
图像的压缩程度可能会比相应的JPEG
文件更好或更差,具体取决于它是计算机生成的图形类型的图像(适用于PNG
)还是传统照片由相机拍摄的图像类型(适用于JPEG
)。但是你想要更大的图像,无论如何你可能会被PNG
困住。您还可以调查Large TIFF
格式。