当前位置 : 主页 > 手机开发 > 其它 >

如何在PIL中将部分Alpha透明图像转换为单一(非透明)颜色?

来源:互联网 收集:自由互联 发布时间:2021-06-22
我有一个标识,我需要制作成单色版本,例如全红色.例如,将此转换为: 对此: 我在PIL中尝试了各种技术(主要是Image.paste),但结果并不尊重边缘周围的部分alpha透明像素. from PIL import Image
我有一个标识,我需要制作成单色版本,例如全红色.例如,将此转换为:

对此:

我在PIL中尝试了各种技术(主要是Image.paste),但结果并不尊重边缘周围的部分alpha透明像素.

from PIL import Image

image = Image.open('logo.png')
assert im.mode.endswith('A'), 'This will only work with images having alpha!'

image.load()
alpha = image.split()[-1]
image2 = Image.new(image.mode, image.size, (255, 0, 0, 0))
image2.putalpha(alpha)

image2.save('logo-red.png')
网友评论