Imagemagick图像以适当的边距彼此相邻 [英] Imagemagick images next to each other with proper margin
问题描述
我正在尝试创建一个透明背景的png文件,在其中我将图像彼此相邻。
到目前为止,我的命令是:
转换-%-bordercolor无-background none -gravity center logo.png -border 5x5(img1.jpg img2.jpg img3。 jpg -border 5x5 + append)(img4.jpg img5.jpg img6.jpg -border 5x5 + append)-append -border 5x5 -resize 720x480 output.png
它为我创建了这张图片
如何更改命令以使图像显示如下?
(我将背景设为灰色,因此可以看到白色文本,背景稍后将变为透明)
方法2
这样,您可以使用第一个 convert
命令在每个标签的上方和下方放置标签图片,然后将所有6张标记的图片流式传输到 montage
中,为您做网格布局(在粉红色上),然后从那里回到另一个转换
创建灰色背景画布并在顶部写上徽标。
#!/ bin / bash
convert -background none -bordercolor none -gravity west \
1.png标签: 1 + swap -append标签:文本1; -append -write miff:-+ delete b
2.png标签: 2 +交换-附加标签:文本2; -append -write miff:-+删除\
3.png标签: 3 + swap -append标签:文本3; -append -write miff:-+删除\
4.png标签: 4 + swap -append标签:文本4; -append -write miff:-+删除\
5.png标签: 5 + swap -append标签:文本5; -append -write miff:-+删除\
6.png标签: 6 + swap -append标签: text 6 -追加miff:-|
montage -set label’’miff:--background pink -tile 3x2 -geometry + 15 + 5 miff:-|
convert -size 800x500 xc:gray80 -gravity center miff:--composite -gravity north logo.png -geometry + 0 + 30 -composite result.png
对不起,我不知道为什么Windows解析这么差该命令,但是经过反复摆弄,以下似乎起作用了-我不知道为什么!
convert -background none -bordercolor none -gravity西^
1.png标签: 1 + swap -append标签:文本1; -append -write miff:-+ delete ^
2.png标签: 2 +交换-附加标签:文本2; -append -write miff:-+ delete ^
3.png标签: 3 + swap -append标签:文本3; -append -write miff:-+ delete ^
4.png标签: 4 + swap -append标签:文本4; -append -write miff:-+ delete ^
5.png标签: 5 + swap -append标签:文本5; -append -write miff:-+ delete ^
6.png标签: 6 + swap -append标签: text 6 -追加miff:-|蒙太奇设置的标签 miff:-^
-背景粉红-瓷砖3x2-几何+ 15 + 5 miff:-|转换-size 800x500 ^
xc:gray80 -gravity center miff:-composite -gravity north logo.png -geometry + 0 + 30 -composite result.png
I am trying to create a png file with a transparent background, in which I put images next to each other.
My command so far is this:
convert --% -bordercolor none -background none -gravity center logo.png -border 5x5 ( img1.jpg img2.jpg img3.jpg -border 5x5 +append ) ( img4.jpg img5.jpg img6.jpg -border 5x5 +append ) -append -border 5x5 -resize 720x480 output.png
it creates me this image
how do I have to change my command to make the image appear as following?
(I made the background grey so one can see the white text, the background shall be transparent later on)
I tried Mark Setchells suggestion the command so far looks like this:
convert -background none -bordercolor none -gravity west \ C:\xampp\htdocs\app\storage\images\Img_1.jpg label:"1" +swap -append label:"text 1" -append -write miff:- +delete \ C:\xampp\htdocs\app\storage\images\Img_2.jpg label:"2" +swap -append label:"text 2" -append -write miff:- +delete \ C:\xampp\htdocs\app\storage\images\Img_3.jpg label:"3" +swap -append label:"text 3" -append -write miff:- +delete \ C:\xampp\htdocs\app\storage\images\Img_4.jpg label:"4" +swap -append label:"text 4" -append -write miff:- +delete \ C:\xampp\htdocs\app\storage\images\Img_5.jpg label:"5" +swap -append label:"text 5" -append -write miff:- +delete \ C:\xampp\htdocs\app\storage\images\Img_6.jpg label:"6" +swap -append label:"text 6" -append miff:- | montage -set label '' miff:- -background pink -tile 3x2 -geometry +15+5 miff:- | convert -size 800x500 xc:gray80 -gravity center miff:- -composite -gravity north C:\xampp\htdocs\app\storage\images\logo.png -geometry +0+30 -composite C:\xampp\htdocs\app\storage\images\result.png
You can do it many ways. Here is one:
Method 1
#!/bin/bash
convert -background none -bordercolor none -gravity west \
\( 1.png label:"1" +swap -append label:"text 1" -append -border 5x5 \) \
\( 2.png label:"2" +swap -append label:"text 2" -append -border 5x5 \) +append \
\( 3.png label:"3" +swap -append label:"text 3" -append -border 5x5 \) +append \
\( \
\( 4.png label:"4" +swap -append label:"text 4" -append -border 5x5 \) \
\( 5.png label:"5" +swap -append label:"text 5" -append -border 5x5 \) +append \
\( 6.png label:"6" +swap -append label:"text 6" -append -border 5x5 \) +append \
\) -append \
-gravity center -extent 800x550 \
-gravity north logo.png -geometry +0+30 -composite result.png
Method 2
This way you can use the first convert
command to put the labels above and below each image and then stream all 6 labelled images into montage
to do the grid layout (on pink) for you and from there back into another convert
to create the gray background canvas and write the logo on at the top.
#!/bin/bash
convert -background none -bordercolor none -gravity west \
1.png label:"1" +swap -append label:"text 1" -append -write miff:- +delete \
2.png label:"2" +swap -append label:"text 2" -append -write miff:- +delete \
3.png label:"3" +swap -append label:"text 3" -append -write miff:- +delete \
4.png label:"4" +swap -append label:"text 4" -append -write miff:- +delete \
5.png label:"5" +swap -append label:"text 5" -append -write miff:- +delete \
6.png label:"6" +swap -append label:"text 6" -append miff:- |
montage -set label '' miff:- -background pink -tile 3x2 -geometry +15+5 miff:- |
convert -size 800x500 xc:gray80 -gravity center miff:- -composite -gravity north logo.png -geometry +0+30 -composite result.png
Sorry, I have no idea or understanding why Windows is so poor at parsing the command, but after much fiddling around, the following seems to work - I have no idea why!
convert -background none -bordercolor none -gravity west ^
1.png label:"1" +swap -append label:"text 1" -append -write miff:- +delete ^
2.png label:"2" +swap -append label:"text 2" -append -write miff:- +delete ^
3.png label:"3" +swap -append label:"text 3" -append -write miff:- +delete ^
4.png label:"4" +swap -append label:"text 4" -append -write miff:- +delete ^
5.png label:"5" +swap -append label:"text 5" -append -write miff:- +delete ^
6.png label:"6" +swap -append label:"text 6" -append miff:- | montage -set label "" miff:- ^
-background pink -tile 3x2 -geometry +15+5 miff:- | convert -size 800x500 ^
xc:gray80 -gravity center miff: -composite -gravity north logo.png -geometry +0+30 -composite result.png
这篇关于Imagemagick图像以适当的边距彼此相邻的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!