[英]How to save an image list in PDF using PIL (pillow)?
我想使用 PIL .save()
方法將我的 PIL 圖像列表導出為 pdf。
在PIL 文檔中,保存部分說: => 我們可以對 pdf 格式使用
append_images
選項。
在枕頭的 github 頁面中,這個問題說:將append_images 添加到 PDF 保存 #2526
我寫了這段代碼:
import PIL
im1 = PIL.Image.open("1.jpg").convert("RGB")
im2 = PIL.Image.open("2.jpg").convert("RGB")
im3 = PIL.Image.open("3.jpg").convert("RGB")
images = [im1,im2,im3]
images[0].save("out.pdf", save_all=True, append_images=images[1:])
但它不起作用!
這些錯誤引發:
Traceback (most recent call last):
File "sample.py", line 13, in <module>
gif.save("out.pdf", save_all=True, append_images=images)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/Image.py", line 1928, in save
save_handler(self, fp, filename)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/PdfImagePlugin.py", line 55, in _save_all
_save(im, fp, filename, save_all=True)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/PdfImagePlugin.py", line 182, in _save
Image.SAVE["JPEG"](im, op, filename)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/JpegImagePlugin.py", line 609, in _save
info = im.encoderinfo
AttributeError: 'Image' object has no attribute 'encoderinfo'
這個問題在 PIL ver 5.0.0 ( https://pillow.readthedocs.io/en/latest/ ) 中得到解決。
試試這個格式
from PIL import Image
im1 = PIL.Image.open("1.jpg").convert("RGB")
im2 = PIL.Image.open("2.jpg").convert("RGB")
im3 = PIL.Image.open("3.jpg").convert("RGB")
images = [im2,im3]
im1.save("out.pdf", save_all=True, append_images=images)
有點偏離主題,但如果您有大量圖像要轉換,則使用列表理解是可行的方法。
from PIL import Image
im1=Image.open('1.png').convert('RGB')
images = [Image.open(str(imgNumber)+'.png').convert('RGB') for imgNumber in range(2,100)]
im1.save("imgBook.PDF", save_all=True, append_images=images)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.