为具有透明度的png添加透明彩色背景

Add a transparent coloured background to png with transparency

我正在尝试做一些非常简单的事情,但不知何故无法做到。

我有一个带有透明区域的 PNG。

如何添加背景图层填充一些 RGBA 颜色,例如 rgba(255,0,0,128)

我在命令行形式中使用 imagemagick 版本 6。

例如,这将是 PNG 图片:

首先想到的就是在图片下画颜色和合成

convert input.png \( +clone -fill 'rgba(255,0,0,0.5)' -draw 'color 0,0 reset' \) +swap -composite output.png

虽然我确信有更快的方法。

您可以在 ImageMagick 中通过将图像与颜色拼合来做到这一点。

convert sayduck.png -background "rgba(255,0,0,0.5)" -flatten result.png