Imagemagick蒙太奇3x3间距1px

时间:2014-03-14 14:40:00

标签: imagemagick

我想使用imagemagicks合并9个图像转换为3x3图块,图块之间的间距为1px。 在我的另一个,更大版本的结果图像我有2px的间距。为实现这一目标,我为每张图片添加了1px的边框,在创建图像后,我使用裁剪去除外边框。

是否有一种简单的方法可以在瓷砖之间获得1px的间距,不幸的是0.5px的边框不起作用。

最好的。

1 个答案:

答案 0 :(得分:1)

您的方法类似于montage程序使用的方法,该方法与您找到的方法具有相同的限制。为了在tile之间获得1px的间距,您需要更多地参与convert命令。这里使用的方法首先构建结果图像的行,然后将它们粘在一起,然后切出我们不想要的边框像素。

convert \( 0.png 1.png 2.png -splice 1x +append \) \
        \( 3.png 4.png 5.png -splice 1x +append \) \
        \( 6.png 7.png 8.png -splice 1x +append \) \
        -splice x1 -append -chop 1x1 \
        out.png

更详细:

  • 每个带括号的子组都说要在子组中的每个图像的左侧添加一个宽度为1的列。子组中的第一个图像也会添加一列,因此我们将在最后清除它。然后我们水平地附加行的图像,然后对第二行和第三行执行相同的操作。
  • 构建行后,我们使用splice在我们的三行顶部添加1像素行,并垂直追加。
  • 此时,我们几乎已经拥有了我们想要的图像,但是我们需要摆脱左边和顶部的1像素边框,这就是最终-chop的用途。

希望这有帮助。