python pillow 修改gif背景色为透明

废话不多说,直接上代码

from PIL import Image
from PIL import ImageSequence


imgs = Image.open("xxx.gif")

image_list = []

for frame in ImageSequence.Iterator(imgs):
    img = frame.convert("RGBA")  # 转换获取信息
    newImage = []
    for item in img.getdata():
        ##将rgb小于(52,52,52)的值,替换成透明
        if item[0] < 52 and item[1] < 52 and item[2] < 52:
            newImage.append((255, 255, 255, 0))
        else:
            newImage.append(item)
    img.putdata(newImage)
    image_list.append(img)

image_list[0].save("xxxxx.gif", save_all=True, loop=True, append_images=image_list[1:],
                   duration=1)
posted @ 2023-01-13 15:17  呦吼吼吼~  阅读(126)  评论(0编辑  收藏  举报