有任何脚本可以自动通过方格裁剪非常大的图像吗?

有任何脚本可以自动通过方格裁剪非常大的图像吗?

我有一张非常大的地图图像(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和输出图像名称。HXY

相关内容