python - 使用 Pillow 将 png 转换为 jpeg

标签 python python-3.x image python-imaging-library

我正在尝试使用枕头将 png 转换为 jpeg。我尝试了几个脚本都没有成功。这两个似乎适用于像这样的小 png 图像。

enter image description here

第一个代码:

from PIL import Image
import os, sys

im = Image.open("Ba_b_do8mag_c6_big.png")
bg = Image.new("RGB", im.size, (255,255,255))
bg.paste(im,im)
bg.save("colors.jpg")

第二个代码:

image = Image.open('Ba_b_do8mag_c6_big.png')
bg = Image.new('RGBA',image.size,(255,255,255))
bg.paste(image,(0,0),image)
bg.save("test.jpg", quality=95)

但是如果我尝试转换像这样的更大图像

我来了

Traceback (most recent call last):
  File "png_converter.py", line 14, in <module>
    bg.paste(image,(0,0),image)
  File "/usr/lib/python2.7/dist-packages/PIL/Image.py", line 1328, in paste
    self.im.paste(im, box, mask.im) ValueError: bad transparency mask

我做错了什么?

最佳答案

你应该使用 convert() 方法:

from PIL import Image

im = Image.open("Ba_b_do8mag_c6_big.png")
rgb_im = im.convert('RGB')
rgb_im.save('colors.jpg')

更多信息:http://pillow.readthedocs.io/en/latest/reference/Image.html#PIL.Image.Image.convert

关于python - 使用 Pillow 将 png 转换为 jpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43258461/

相关文章:

r - 使用 R 并行批量调整图像大小

python - 在 Django Haystack 的 SearchQuerySet 中过滤空白的 CharField

python - python中的正则表达式字典

python - 在 python 中生成唯一的二进制排列

python - 如何删除此参数处理代码的重复项?

javascript - 另一个图像 slider JQuery 问题

Python有趣的数组索引

python - account.invoice 添加自定义计算和过滤字段

python - 将参数传递给 Python 脚本

css - 在 div 中水平和垂直对齐图像和文本