我有以下两个独特的透明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.png
将folder1/*-0.png
覆盖在folder2/*-0.png
之上。
这是我成功使用一对脚本完成的脚本,但无法批量处理:
convert folder1/*-0.png folder2/*-0.png -gravity center -composite -format png -quality 100 output.png
答案 0 :(得分:1)
我还是不明白,但是认为您想要这样的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
您将其另存为HOME目录中的merge
,然后启动Terminal并运行此命令使其可执行(只需一次):
chmod +x merge
然后,您可以使用cd
转到父目录,例如:
cd where/the/images/are
并使用以下命令运行命令:
$HOME/merge