PageObject对象提供merge_page()方法用于合并页面。注意,这个合并并不是前文中的那种将多个页面按顺序排在一起的合并,而是把多个页面叠加为一个页面,所以我们可以通过这种方法达到为页面添加水印的目的。
首先要自己准备一个PDF页面当成是水印,可以使用Acrobat等软件制作,或者使用Word做好水印之后将其导出为PDF文档,当然也可以使用本书提供的素材,有了水印页面之后把它合并到需要添加水印的PDF文档的每一页即可,代码如下:
from PyPDF2 import PdfReader,PdfWriter
watermark_reader = PdfReader("./pdf_ files/水印.pdf")
watermark_page = watermark_reader.getPage(0)
reader = PdfReader("./pdf_ files/练习文档.pdf")
writer = PdfWriter()
for page in reader.pages:
page.merge_page(watermark_page)
writer.add_page(page)
with open("./pdf_ files/test.pdf","wb") as f:
writer.write(f)