如何融合 2 个图像并保持相同的文件名/覆盖原始文件

How to fuse 2 image and keep the same filename / overwrite the original

我有 3 张 png 图像:一个带有透明背景的红色正方形 (1.png)、一张地图 (PLAN.png) 和一个带有透明背景的颜色渐变 (LEGEND.png) .我想先把红色方块放在地图上面,然后把颜色渐变放在上面,同时为多个文件夹中的多个文件保留红色方块的原始文件名

这是我在 windows 命令中得出的结果:

cd [location of the folder]
magick convert ../PLAN.png 1.png -compose multiply -composite 1.png && magick composite ../LEGEND.png 1.png 1.png

问题是对于每个文件,我需要手动将 1.png 更改为例如 1 2 3.png 。我用过这个命令:

magick mogrify -gravity center -draw "image Over 0,0 0,0 '../PLAN2.png'" *.png

虽然有了它,我不必手动更改 1.png,但它不适用于地图,因为它把它放在红色方块的顶部

在 ImageMagick 7 中,执行以下操作。注意,使用 magick,而不是 magick convert。

magick PLAN.png 1.png -compose over -composite LEGEND.png -compose over -composite 1.png

magick PLAN.png 1.png LEGEND.png -background none -flatten 1.png

其中任何一个都符合您的要求吗?