如何将PDF元素与Java合并

时间:2019-02-07 14:58:38

标签: java pdf java-8 pdfbox

我可以使用PDFBox(或其他库)将元素从两个PDF合并到最终PDF吗?

我不是在寻找页面串联,而是合并页面元素:

enter image description here

1 个答案:

答案 0 :(得分:0)

OP的任务是将两个页面合并为一个页面,将每个对象保持在页面上的当前位置。

为此,PDFBox提供了Overlay类。给定两个PDDocumentdocument1实例,您可以简单地

document2

将第二个覆盖在第一个文档上。

但是Overlay overlay = new Overlay(); overlay.setOverlayPosition(Overlay.Position.FOREGROUND); overlay.setInputPDF(document1); overlay.setAllPagesOverlayPDF(document2); Map<Integer, String> ovmap = new HashMap<Integer, String>(); overlay.overlay(ovmap); document1.save(""); overlay.close(); 可用于更复杂的叠加任务。特别是,它还允许您设置特定的PDF,使其仅覆盖奇数,偶数页面或仅覆盖明确指定的页面。

以示例为例,了解一下PDFBox工具Overlay的来源。


不过,请注意:只有多余文档的页面内容用于覆盖,所有注释都将被忽略。也不要期望标签会被复制。