python 实现 PDF 添加水印
1. 代码部分
from PyPDF2 import PdfFileReader,PdfFileWriter
from copy import copy
mark_paf = PdfFileReader("4.pdf")
mark_page = mark_paf.getPage(0)
pdf_reader = PdfFileReader("5.pdf")
pdf_writer = PdfFileWriter()
for page in range(pdf_reader.getNumPages()):
page = pdf_reader.getPage(page)
news_page = copy(mark_page)
news_page.mergePage(page)
pdf_writer.addPage(news_page)
with open("6.pdf","wb") as out:
pdf_writer.write(out)
2. 需要的参数详解
- "4.pdf" 为水印文件
- "5.pdf" 为加水印文件
- "6.pdf" 为输出文件
注释: 文件 6.pdf 可有可无, 如果不需要重新另存为的话可以直接将原代码中的 6.pdf 修改为 5.pdf 即可
3. 会报错的问题以及解决方法
-
报错内容
-
找到对应的报错文件
-
第 484 行源代码
-
在 except 中添加代码
-
修改后
-
修改之后仍会报错, 需要修改另外一处,Lib/site-packages/PyPDF2/utils.py 第 238 行的原代码
-
修改之后的代码
-
参考文献
https://blog.csdn.net/kmesky/article/details/102695520