微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用python3枕头为gif添加水印但背景颜色改变了

如何解决使用python3枕头为gif添加水印但背景颜色改变了

我使用python3枕头为gif添加水印,但backgroup颜色改变了; 下面是代码

def watermark_on_gif(in_gif,out_gif,text='scratch8'):
"""本函数给gif动图加水印"""
frames = []
myfont = ImageFont.truetype("msyh.ttf",12)
im = Image.open(in_gif)
water_im = Image.new("RGBA",im.size)
draw = ImageDraw.Draw(water_im)     
width,height = water_im.width,water_im.height
fontsize = draw.textsize(text,font = myfont) # 文字的宽度和高度
#draw.text(( width//2-fontsize[0]//2,height-fontsize[1]*4),text,font=myfont,fill='gray')
draw.text(( 10,10),fill=choice(_colors))
       
water_mask = water_im.convert("L").point(lambda x: min(x,160))
water_im.putalpha(water_mask) 

#print(im.info)
index = 0
for frame in ImageSequence.Iterator(im):             # 迭代每一帧
    frame = frame.convert("RGBA")
    #frame = Image.alpha_composite(frame,water_im)
    frame.paste(water_im,None,water_mask)
    frames.append(frame)
newgif = frames[0]
newgif.save(out_gif,save_all=True,append_images=frames[1:],quality=85,duration=100)
im.close()

添加水印后的图片

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。