PyPDF2模块介绍之——PdfFileWriter
PdfFileWriter class是文件写入模块,通过它,可以将给定的页面写入到pdf文件中 , (以后本教程简写为pdfwriter , 权且叫pdf文件写入器),改模块与第一个模块PdfFileReader配合使用,代码操作在
c:/users/admin/desktop/pypdf/day03目录下 , 有两个PDF文件test.pdf,ad.pdf,Ipython8.0交互式环境下测试,test文件是要读取的测试文件8页,ad文件是一页个人logo文件
读取测试PDF1
个人logoPDF文件
写入器基本介绍:一图胜千言
思维导图如下:
写模块思维导图
PdfFilewriter常用属性测试(结合PdfFileReader)
先初始化环境(PdfFileReader-->pdfreader简写替代,PdfFileWriter--> pdfwriter简写替代)# 导入读写模块 , 并且重命名简便替代from PyPDF2 import PdfFileReader as pdfreaderfrom PyPDF2 import PdfFileWriter as pdfwriter# 两个PDF文件读取器和一个写入器rpdf = pdfreader('test.pdf') #一个读取器读取test文档ad = pdfreader('ad.pdf') #一个读取器读取ad文档wpdf = pdfwriter() #wpdf代表写入器
1、addPage()添加页面方法测试,配合write()写入保存文件方法
顾名思义就是增加一个页面,参数必须是页面对象,可以通过读取pdfreader的getPage(数字)获得,操作如下
p= ad.getPage(0) #获取logo文件第一页页面wpdf.addPage(p) #增加一次个人logo页面wpdf.addPage(p) # 再来一次# 保存新文档with open('add_ad2.pdf','wb') as f: wpdf.write(f)
写入器增加页面并且写入文件
连续写入两遍的结果
2、insertPage()页面插入方法测试,配合write()写入保存文件方法
顾名思义就是插入,有两个参数,一个插入页面对象,和addPage相同 , 另一个是index=0,默认插入到第一个位置 。操作请看
【模块PdfFileWriter介绍 python办公自动化之pdf篇 day03】
# 获取test文件中的第2页作为临时页面page_tmp = rpdf.getPage(1)wpdf.insertPage(page_tmp) # 吧临时页面插入到文件写入器中with open('insert_ad2.pdf','wb') as f: wpdf.write(f) # 数据写入文件f
插入页面的操作演示
简单学习完读与写的基本模块,我们其实可以做到PDF文件的页面的:插入 , 排序、提取等,实际应用中,比如把一个大的PDF文件插入片头片尾个人logo , 或者中间插入,我在下一节的实例中进行讲解 。