python PIL 将带透明底png图片批量转化为jpg格式

该文章介绍了一种方法,通过在Python中利用PIL库,将带透明底的PNG图片粘贴到纯白背景上,然后以JPG格式保存,以解决转换后图片质量下降的问题。这个过程可以批量处理PNG文件,提高转换的效率和图片质量。
摘要由CSDN通过智能技术生成
需求:

将带透明底png图片批量转化为jpg格式

遇到的问题:

好多帖子的方法虽然可以将png图片转化为jpg图片,但是转化后的jpg图片有问题,转化后的图片和原图差距太大

解决办法:

直接将png图片paste到纯白图片上面,然后以jpg格式保存

import os
from PIL import Image

dirname_read="存放png图片的文件夹路径"   
dirname_write="需要存放jpg图片的文件夹路径"
names=os.listdir(dirname_read)
count=0
for name in names:
    img=Image.open(dirname_read+'/'+name)
    name=name.split(".")
    if name[-1] == "png":
        name[-1] = "jpg"
        name = str.join(".", name)
        x,y = img.size
        #im.paste(image,box, mask)
        p = Image.new('RGB', img.size, (255,255,255))
        p.paste(img, (0, 0, x, y), img) 
        to_save_path = dirname_write +'/'+name
        p.save(to_save_path)
        count+=1
        print(to_save_path, "------conut:",count)
    else:
        continue
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZeeZR

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值