【问题标题】:Using imagemagick how can i slice up an image into several separate images?使用 imagemagick 我如何将图像分割成几个单独的图像?
【发布时间】:2012-03-27 00:56:33
【问题描述】:

请考虑以下示例:

源图像由 6 个区域组成,这些区域需要被分割成 6 个单独的图像。

如何使用 imagemagick 获得所需的输出。我试图了解 imagemagick examples 中提出的可能解决方案,但未能将其转移到我的具体问题。

最好在单行中解决这个问题的方法是什么? 由于我要切片的所有区域都具有相同的大小,但它们的偏移量不同,有没有办法以某种方式传递预设的区域大小,然后简单地为每个区域添加 xy 偏移量?

【问题讨论】:

  • 它们的偏移量有何不同?随意摆放?从原点开始的网格?基本上,这些区域的偏移量是如何相互关联的?

标签: bash imagemagick crop slice


【解决方案1】:

如果每个区域周围有相同数量的填充,您可以使用the @ operator

这会将图像分成 6 个部分,每行 2 个,每个部分排除 40 像素的水平填充和 20 像素的垂直填充:

convert image.png -crop 2x3-40-20@ +repage +adjoin tile-%d.jpg

【讨论】:

  • 我可以这样做,但从 %d =1 开始?
  • 是的,请参阅 fx expressionsfilename percent escapes -- convert image.png -crop 2x3-40-20@ -set filename:index "%[fx:t+1]" +repage +adjoin tile-%[filename:index].jpg
猜你喜欢
  • 2012-01-06
  • 2014-10-17
  • 2012-12-16
  • 2010-09-10
  • 1970-01-01
  • 2017-07-25
  • 1970-01-01
  • 1970-01-01
  • 2022-01-06
相关资源
最近更新 更多