我正在寻找一种方法来导出 PDF 的注释层并将其合并回另一个 PDF。我尝试过使用 poppler 和 PyPDF2 之类的库,但到目前为止没有任何效果。有没有可以做我想做的任何开源库?
问问题
226 次
1 回答
0
免责声明:我是本示例中使用的库 pText 的作者。
pText 将 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)
于 2021-02-21T12:43:42.767 回答