0
所以我想淡出已經有透明背景的圖像。使用Python PIL庫垂直淡入透明背景圖像到透明度
我在this question中發現了非透明圖像的解決方案,但它不適用於具有透明背景的圖像。那麼我該怎麼做才能將透明背景的圖像垂直淡入淡出?
這裏是我用來創建透明圖像
bg = Image.new("RGBA", (width, height), (r,g,b,inputBgAlpha))
...
bg.paste(deviceBg, devicePadding, mask=deviceBg)
的代碼和以下是我的嘗試。它會產生一個帶有顏色而不是透明的背景。
# https://stackoverflow.com/a/19236775/2603230
arr = numpy.array(bg)
alpha = arr[:, :, 3]
n = len(alpha)
alpha[:] = numpy.interp(numpy.arange(n), [0, 0.55*n, 0.05*n, n], [255, 255, 0, 0])[:,numpy.newaxis]
bg = Image.fromarray(arr, mode='RGBA')