PyPDF2在加水印时损坏文件

安东尼·米德

我一直在尝试通过通过PyPDF2向PDFs添加水印作为水印来加快日期戳过程。我在网上找到了下面的代码,因为我是编码的新手。

当我运行它时,它似乎可以工作,但是文件已损坏,无法打开。有谁知道我要去哪里错了?

from PyPDF2 import PdfFileWriter, PdfFileReader

 

def create_watermark(input_pdf, output_pdf, watermark):

    watermark_obj = PdfFileReader(watermark,False,)

    watermark_page = watermark_obj.getPage(0)

 

    pdf_reader = PdfFileReader(input_pdf)

    pdf_writer = PdfFileWriter()

 

    # Watermark all the pages

    for page in range(pdf_reader.getNumPages()):

        page = pdf_reader.getPage(page)

        page.mergePage(watermark_page)

        pdf_writer.addPage(page)

 

    with open(input_pdf, 'wb') as out:

        pdf_writer.write(out)

 

if __name__ == '__main__':

   

    input_pdf = "C:\\Users\\A***\\OneDrive - ***\\Desktop\\Invoice hold\\Test\\1.pdf"

    output_pdf = "C:\\Users\\A***\\OneDrive - ***\\Desktop\\Invoice hold\\Test\\1 WM.pdf"

    watermark = "C:\\Users\\A***\\OneDrive - ***\\Desktop\\Invoice hold\\WM.pdf"

 

    create_watermark(input_pdf,output_pdf,watermark)
荣格机器人

如果您想将pdf文件保存为output_pdf,

尝试这个 :

result = open(output_pdf, 'wb')
pdf_writer.write(result)

您的代码:

with open(input_pdf, 'wb') as out:
    pdf_writer.write(out)

您的代码将覆盖input_pdf。

如果工作时出现问题,则pdf文件将被损坏。

我通过应用您的代码和建议的方法成功插入了水印。

我建议检查pdf文件是否未损坏。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用Python的PyPDF2 lib从PDF文件中删除水印

来自分类Dev

PyPDF2:从zip文件读取pdf

来自分类Dev

在Python中使用PyPdf2 PdfFileMerger时发生错误

来自分类Dev

尝试从lib运行示例时出现pyPDF2 TypeError

来自分类Dev

如何使用pypdf2打开pdf文件

来自分类Dev

使用Python与PyPDF2从PDF文件提取文本

来自分类Dev

PyPDF2 PdfFileMerger 在合并文件中丢失 PDF 模块

来自分类Dev

使用PHP在PDF文件上加水印

来自分类Dev

使用PyPDF2添加书签

来自分类Dev

Python PyPDF2合并文档

来自分类Dev

需要位置参数PyPDF2

来自分类Dev

维护的PyPDF2替代品

来自分类Dev

PyPDF2 PdfFileMerger.Merge类

来自分类Dev

Python PyPDF2合并文档

来自分类Dev

PyPDF2 'PageObject' 未定义

来自分类Dev

PyPDF2在阅读pdf时创建非字母数字字符

来自分类Dev

我如何知道使用PyPDF2将文件附加到我的PDF中?

来自分类Dev

使用PyPDF2检测Google Docs生成的PDF文件中的非嵌入式字体

来自分类Dev

ffmpeg-添加水印时的无限循环

来自分类Dev

如何在pdf文件中添加水印?

来自分类Dev

PHPExcel-为Excel .xls生成的文件添加水印

来自分类Dev

使用pypdf2将文件夹中的所有pdf文件合并为一个pdf

来自分类Dev

PyPDF2脚本,用于拆分文件夹中pdf的每一页

来自分类Dev

如何遍历目录中的文件,以便可以使用PyPDF2打开/读取它们?

来自分类Dev

如何使用Windows安装pyPDF2模块?

来自分类Dev

如何使用PyPDF2设置PDF版本?

来自分类Dev

“没有名为PyPDF2的模块”错误

来自分类Dev

Python无法使用pyPDF2打印PDF

来自分类Dev

导入时没有名为“ PyPDF2”的模块