2012-06-19 38 views
6

我想使用imagemagick命令行向现有图像添加一系列图像。用ImageMagick命令行在现有图像上添加图像

如您所见,这不仅仅是添加图像。我发现http://www.imagemagick.org/Usage/compose/在哪里我可以看到一些例子,但我需要的是填充每个'块'。

我确切的位置,每个块的开始和结束,我也有一个比例参数来缩小它。

我想我可以使用

composite -geometry +31+105 toadd.gif source.gif newfile.jpg 

但是这仅仅是一个图像添加,我需要它缩小。

我想知道如果我可以创建某种类型的矩形并填充我的图像。

任何想法如何解决?

回答

16

转换会更好,因为您可以继续使用复合或图层添加图像。

这是一个非常粗略的例子,我可能会从更长的墙壁开始,以便在调整大小时裁剪它。我仍然会有相当多的用户输入来修复这些位置,因为我记得你并不总是拥有相同长度的相同数量的墙。 我会写一些代码来将详细信息输入到表单中,因为它比每次更改代码更容易。

convert k0jbqs.jpg \ 
    (313386r.png -thumbnail x25) -gravity west -geometry +0+30 -composite \ 
    (313386r.png -thumbnail x25) -gravity center -geometry +80+30 -composite \ 
    (313386r.png -thumbnail x25) -gravity east -geometry +0+30 -composite \ 
    output.png 

您将需要采取行突破我刚刚添加那些使代码可读。

注意:缩略图调整砖图像的大小;您可以忘记重力,只需使用几何图形,数字就是左上角的位置,并且可以将新图像放在先前的图像上。

+0

你能告诉我'-thumbnail'做了什么吗?以及为什么在第一个街区有第二个“重心”和第三个“重力东部”的“重力西部”?在我的图像中,我将确定每个块的确切位置(最多有4个块),以及什么是“复合”? – gerpaick

+0

我会在答案中添加一些注释。 – Bonzo

+0

如果其中一个块的宽度比我的砖块图像的宽度大,那么如何在块完成时重复它的水平并裁剪它? – gerpaick