利用Python批量把图片输出为PDF文档

前言

在Github瞎晃荡,发现了一个便利性很高的Python库 —— Pillow

这个库可以把图片文件夹内的图片批量输出成PDF文件,例如下载到的漫画都是一张一张的,而且有横竖不一和尺寸大小不一的情况,输出成PDF文件后,看漫画只需要上下滑动屏幕就好了。

安装Pillow

python3 -m pip install --upgrade pip
python3 -m pip install --upgrade Pillow

创建main.py

__DOC_NAME__ = '***' //图片输出的名字(根据实际情况变更)
__IMAGES_PATH__ = 'images/'   // 图片的保存路径(根据实际情况变更)
__SAVE_PATH__ = 'pdf/'   // PDF输出的路径(根据实际情况变更)
__PAGE__ = 1              // 图片的张数 (根据实际情况变更)
__FILE_TYPE__ = '.***'      // 图片格式(根据实际情况变更)
__FILL_NUMBER__ = 3         // 需要填充的长度(根据实际情况变更)

from PIL import Image

_cover = Image.open('images/{}{}'.format('1'.zfill(__FILL_NUMBER__), __FILE_TYPE__))

cover = _cover.convert('RGB')

imagelist = []

for i in range(2, __PAGE__ + 1):
    _index = str(i).zfill(__FILL_NUMBER__)
    _real_path = __IMAGES_PATH__ + _index + __FILE_TYPE__
    _image = Image.open(_real_path)
    _im = _image.convert('RGB')
    imagelist.append(_im)

saved_path = __SAVE_PATH__ + __DOC_NAME__ + '.pdf'

cover.save(saved_path, save_all=True, append_images=imagelist)

__FILL_NUMBER__的数值取决于图片文件名,例如:001.jpg 该参数则为3.