如何修复图像的透明度?太平船务

How can i fix transparency in image? PIL

当我尝试 运行 这段代码时,我的图像损坏了

用户头像要透明

我想要这样制作:

我该如何解决这个问题?

import io
from PIL import Image, ImageDraw

im_rgb = Image.open('cards/customcard1.png')
im_a = Image.new("RGBA", im_rgb.size, 0)
im_a.paste(im_rgb)
draw = ImageDraw.Draw(im_a)
draw.ellipse((92, 193, 403, 504), fill=255)

memberavatar = await _ctx.author.avatar_url.read()

def rounded_avatar(member):
    with Image.open(io.BytesIO(member)) as im:
        with Image.new("RGBA", im.size) as background:
            rgb_avatar = im.convert("RGBA")
            with Image.new("L", im.size, 0) as mask:
                mask_draw = ImageDraw.Draw(mask)
                mask_draw.ellipse([(0, 0), im.size], fill=255)
                background.paste(rgb_avatar, (0, 0), mask=mask)
        return background

roundedAvatar = rounded_avatar(memberavatar)
roundedAvatar = roundedAvatar.resize((311, 311), Image.ANTIALIAS)
roundedAvatar.save('cards/roundedAva.png')
r = Image.open('cards/roundedAva.png').convert('RGBA')
im_a.paste(r, (92, 193))

im_a.save('C:/Users/RAINGM/desktop/hueta.png')
im_a.show()

我用 Image.alpha_composite()

解决了这个问题