python多PDF文件合成一个

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Lingdongtianxia/article/details/82464212

相信许多小伙伴在学习工作过程中遇到过有许多PDF文件的情况,比如说快期末考试了,时间真的很金贵啊,复习按章节保存的pdf资料时,对于那些不想打印出来的小伙伴,肯定要在电子设备上频繁切换PDF文件,很烦有没有,工作中也会遇到多个技术文档分开存储的情况,要想打他们打印出来,肯定要一个一个的打开然后打印,很烦的有没有,下面这段代码可以解决这个问题,只需要把所有PDF和这个程序放一起就可以啦。

来了解一下 pdf (Portable Document Format的简称,意为“便携式文档格式”),是由Adobe Systems用于与应用程序、操作系统、硬件无关的方式进行文件交换所发展出的文件格式。PDF文件以PostScript语言图象模型为基础,无论在哪种打印机上都可保证精确的颜色和准确的打印效果,即PDF会忠实地再现原稿的每一个字符、颜色以及图象。可移植文档格式是一种电子文件格式。这种文件格式与操作系统平台无关,也就是说,PDF文件不管是在Windows,Unix还是在苹果公司的Mac OS操作系统中都是通用的。这一特点使它成为在Internet上进行电子文档发行和数字化信息传播的理想文档格式。

需要:python 3.x   PyPDF2
import PyPDF2, os

#建立一个装pdf文件的数组
pdfFiles = []

for fileName in os.listdir('.'):    #遍历该程序所在文件夹内的文件
    if fileName.endswith('.pdf'):   #找到以.pdf结尾的文件
        pdfFiles.append(fileName)   #将pdf文件装进pdfFiles数组内

pdfFiles.sort()     #文件排序

pdfWriter = PyPDF2.PdfFileWriter()     #生成一个空白的pdf文件

for fileName in pdfFiles:
    pdfReader = PyPDF2.PdfFileReader(open(fileName,'rb'))   #以只读方式依次打开pdf文件
    for pageNum in range(pdfReader.numPages):
        pdfWriter.addPage(pdfReader.getPage(pageNum))    #将打开的pdf文件内容一页一页的复制到新建的空白pdf里

pdfOutput = open('combine.pdf','wb')     #生成combine.pdf文件
pdfWriter.write(pdfOutput)               #将复制的内容全部写入combine.pdf
pdfOutput.close()

猜你喜欢

转载自blog.csdn.net/Lingdongtianxia/article/details/82464212