我有一张非常大的地图图像(11010*17518 像素),我想将其打印成平均大小的碎片。是否有任何自动脚本可以按方格裁剪图像(例如裁剪成 4*4 并得到 16 张较小的图像)?
答案1
你可以用 MagickSlicer 来完成(https://github.com/VoidVolker/MagickSlicer)。根据文档,有参数
[ -w, --width <tile_width> ]
Set tile width.
Default: 256 pixels or same as height, if height is present.
Type: int
[ -h, --height <tile_height> ]
Set tile height
Default: 256 pixels or same as width, if width is present.
Type: int
该命令将是
./magick-slicer.sh -w 2753 -h 4380 <your image>
我不确定 magick-slicer 将切片图像输出到哪里,但找到它们应该不成问题。您可以查看目录结构来帮助您找到切片图像。还有其他选项,如输出目录。
另一个解决方案是使用crop
选项ImageMagick
https://imagemagick.org/Usage/crop/#crop。这将需要对原始图像进行 16 次裁剪,这可以在两个 for 循环中完成。如下所示:
for x in 1 2 3 4 do
for y in 1 2 3 4 do
convert <input_image> -crop WxH+X+Y +repage <output_image>
done
done
您必须进行一些数学运算才能制作、、、W
和输出图像名称。H
X
Y