1.缘起
最近需要将记的笔记整理成一个 pdf 进行保存,所以就研究了一下如何利用 Python 代码将拍下来的照片整个合并成一个 pdf。
2.过程
拿到一个需求最重要的就是将大块任务拆分成一个个小模块,逐个击破。
2.1拍照
这一步首先是将所有的书页拍好,需要注意的是要按照书的页码来拍,因为后面的排序是按照文件名进行排序的,拍照的文件名基本上是按照时间生成的,如果拍的时候乱了,到时候生成的 pdf 里面的页码也会乱掉。
2.2 Python 操作库
Python 最好的地方就是有大量的第三方库能帮我们快速实现我们想要的方法,搜索到了两个库,
PyFPDF 和img2pdf,我们这里选择img2pdf来完成我们的需求
pip install img2pdf
2.3 Python遍历文件夹获取图片
dirname = "f:/wlzcool"
imgs = []
for fname in os.listdir(dirname):
if not fname.endswith(".jpg"):
continue
path = os.path.join(dirname, fname)
if os.path.isdir(path):
continue
imgs.append(path)
需要注意图片的文件名如果是纯数字且位数不一样,排序会为1之后是10而不是2,需要对数字进行一个额外的排序&