Imagemagick图像以适当的边距彼此相邻 [英] Imagemagick images next to each other with proper margin

查看:99
本文介绍了Imagemagick图像以适当的边距彼此相邻的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试创建一个透明背景的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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆