如何合成两个独特的透明PNG系列?

How to composite two unique series of transparent PNGs?

我有以下两个独特的透明 PNG 系列:

folder1/*-0.png, folder1/*-1.png, folder1/*-2.png, etc.
folder2/*-0.png, folder2/*-1.png, folder2/*-2.png, etc.

我希望输出是父目录中的组合图像:

*-0.png, *-1.png, *-2.png, etc.

意思是 *-0.pngfolder1/*-0.png 覆盖在 folder2/*-0.png 之上。

这是我用一对成功完成的脚本,但无法批量完成:

convert folder1/*-0.png folder2/*-0.png -gravity center -composite -format png -quality 100 output.png

我还是不明白,但我想你想要这样的 bash 脚本:

#!/bin/bash

cd folder1

# Iterate over all PNGs
for f in *.png; do
  this="$f"
  that="../folder2/$f"
  result="../$this"
  echo Combining $this with $that to produce $result
  echo convert "$this" "$that" -gravity center -composite "$result"
done

您可以将其另存为 merge 在您的 HOME 目录中,然后启动终端并 运行 此命令使其可执行(只需要一次):

chmod +x merge

然后可以使用cd进入上级目录,例如:

cd where/the/images/are

和运行命令:

$HOME/merge