我有更多的PNG图像(比如img1.png,img2_transparent.png,img3.png),我希望它们能够展平成一个图像。
在我展平它们之前,我设置了(我希望第二张图像略微透明):
convert img2_transparent.png -alpha on -channel a -evaluate set 90%
然后我把它们弄平(订单是img1.png,img2_transparent.png,img3.png):
convert *.png -flatten out.png
结果还可以,第二个“图层”的不透明度为90%,但是整个图片(因此所有“三个”图层)都“亮了”。颜色不是很深,因为我没有将alpha设置为img2_transparent.png。
我该如何避免这种情况?
谢谢
答案 0 :(得分:2)
如果您希望图像在生成的图像中以相同的小小显示,则通用公式是将每个图层的不透明度设置为
1/(1 + number of layers underneath)
其中基础层处于完全不透明度。然后第二个图像为不透明度1/2,第三个图像为不透明度1/3,第四个图像为不透明度1/4。
convert base.png \
\( layer2.png -channel A -fx '0.5' \) \
\( layer3.png -channel A -fx '0.333' \) \
\( layer4.png -channel A -fx '0.25' \) ....
Cambridge in Colour网站上有一个很好的解释教程。向下滚动到使用图层在PHOTOSHOP中平均图像。