use*_*893 6 python-imaging-library python-3.x
我正在尝试将 png 文件转换为 pdf 文件。PIL
似乎是这样做的方法,但我cannot save mode RGBA
在运行时遇到错误 ( )
代码:
import os
import PIL
from PIL import Image
path = 'E:\path_to_file'
filename = '15868799_1.png'
fullpath_filename = os.path.join(path, filename)
im = PIL.Image.open(fullpath_filename)
newfilename = '15868799.pdf'
newfilename_fullpath = os.path.join(path, newfilename)
PIL.Image.Image.save(im, newfilename_fullpath, "PDF", resoultion=100.0)
Run Code Online (Sandbox Code Playgroud)
错误:
File "C:\Python\lib\site-packages\PIL\PdfImagePlugin.py", line 148, in _save
raise ValueError("cannot save mode %s" % im.mode)
ValueError: cannot save mode RGBA
Run Code Online (Sandbox Code Playgroud)
And*_*kha 13
您需要先将PNG 从 RGBA 转换为 RGB。
示例代码:
from PIL import Image
PNG_FILE = 'E:\path_to_file\15868799_1.png'
PDF_FILE = 'E:\path_to_file\15868799.pdf'
rgba = Image.open(PNG_FILE)
rgb = Image.new('RGB', rgba.size, (255, 255, 255)) # white background
rgb.paste(rgba, mask=rgba.split()[3]) # paste using alpha channel as mask
rgb.save(PDF_FILE, 'PDF', resoultion=100.0)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5294 次 |
最近记录: |