起先在百度上搜到的文章,的确可以做到透明背景转成白色背景,但是缺陷非常严重,会导致图的背景产生很多像素点,而且效率也不是很高。
又经过了一番搜索之后,发现了一个更好的办法。
from PIL import Imagetry:imagePtah = 'your image file path'img = Image.open(imagePtah)if img.mode != 'RGBA':image = img.convert('RGBA')width = img.widthheight = img.heightimage = Image.new('RGB', size=(width, height), color=(255, 255, 255))image.paste(img, (0, 0), mask=img)image.show()except Exception as e:print(e)
使用Image.paste
,就是这么简洁好使。百度一生黑。
以上方法,当然也可以转成其他颜色,选你需要的就可以了,只要替换color=(255, 255, 255)
就可以了。