Imagemagick-结合'crop'和'add layer'参数

问题描述 投票:1回答:1

我有两个可以正常工作的命令:

convert Nord.png -gravity South -crop x80% -fuzz 50% -fill '#5BC236' -opaque '#8FBCBB' -background transparent -extent 800x800 out.png
convert Nord.png out.png -gravity Center -composite -background '#2E3440' -gravity Center -extent 3840x2160 background.png

他们所做的是他们像这样获取PNG文件:

enter image description here

并将其转换为这样的图像:

enter image description here

但是在此过程中,将创建如下文件:

enter image description here

我想知道是否可以将这两个命令组合在一起,以便a)仅对convert命令进行一次调用,而b)仅创建一个文件作为输出。

我尝试过此命令,

convert Nord.png -gravity South -crop x80% -fuzz 50% -fill '#5BC236' -opaque '#8FBCBB' -background transparent -extent 800x800 out.png -gravity Center -composite -background '#2E3440' -gravity Center -extent 3840x2160 background.png

但是输出是不同的:

enter image description here

如何将这两个命令合而为一?

linux bash imagemagick imagemagick-convert
1个回答
2
投票

您应该能够在括号中进行某些“ aside-processing”来克隆Nord.png图像,并进行裁切和颜色更改,然后当您退出括号时,您仍然会拥有Nord.png关闭并在图像堆栈中复制,重新着色,调整大小的图像,这也是您第二条命令开始的方式:

convert Nord.png \
    \( +clone -gravity South -crop x80% -fuzz 50% -fill '#5BC236' -opaque '#8FBCBB' -background transparent -extent 800x800 \) \
    -gravity Center -composite -background '#2E3440' -extent 3840x2160 background.png

-gravity Center是一个设置,直到您对其进行更改之前,它都会被记住,因此无需重复它。

© www.soinside.com 2019 - 2024. All rights reserved.