将注释从 PDF 导出并合并到另一个 PDF

问题描述 投票:0回答:1

我正在寻找一种方法来导出 PDF 的注释层并将其合并回另一个 PDF 中。 我尝试过使用 poppler 和 PyPDF2 等库,但到目前为止没有任何效果。 有没有开源库可以实现我想要的功能?

python pdf export xfdf
1个回答
1
投票

免责声明:我是本示例中使用的库

borb
的作者。

borb
将 PDF 文档转换为嵌套列表、字典和基元的内部类似 JSON 的表示形式。这意味着您的问题归结为将字典从一个 JSON 对象复制到另一个。应该很容易。

您需要阅读第一个文档:

doc_in_a = None
with open("input_a.pdf", "rb") as in_file_handle:
    doc_in_a = PDF.loads(in_file_handle)

那么你需要阅读第二个文档:

doc_in_b = None
with open("input_b.pdf", "rb") as in_file_handle:
    doc_in_b = PDF.loads(in_file_handle)

然后添加从a到b的所有注释:

annots = doc_in_a.get_page(0).get_annotations()
doc_in_b.get_page(0)[Name("Annots")] = List()
for a in annots:
    doc_in_b.get_page(0)["Annots"].append(a)

最后,写pdf b:

with open("output.pdf", "wb") as out_file_handle:
    PDF.dumps(out_file_handle, doc_in_b)

您可以在 GitHub 上获取 pText,或者使用 PyPi 还有大量示例,请查看它们以了解有关使用图像的更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.