PDFBox set覆盖特定页面
问题描述:
我写了一个webapp,它将.pdf
与.png
文件合并。一切正常,除非输入的PDF有多个页面,因为PDFBox没有选择我想叠加的特定页面的功能。它只有第一,最后,奇数,偶数或全部页面。我首先使用PDFBox将.png保存在新的PDF上。我的合并方法使用.pngPDF作为覆盖并将其放在输入PDF上。PDFBox set覆盖特定页面
我对合并的代码如下:
File file2 = new File(getImagePdfLocation());
PDDocument overlayDoc = PDDocument.load(file2);
Overlay overlayObj = new Overlay();
PDDocument originalDoc = PDDocument.load(new File("Path"));
overlayObj.setOverlayPosition(Overlay.Position.FOREGROUND);
overlayObj.setInputPDF(originalDoc);
overlayObj.setAllPagesOverlayPDF(overlayDoc); //alternatives?
Map<Integer, String> ovmap = new HashMap<Integer, String>();
overlayObj.overlay(ovmap);
originalDoc.save("Path");
overlayDoc.close();
originalDoc.close();
有我俯瞰任何功能,也可以提出一个解决办法?
我有一个Javascript,它检索当前页码并将它传递给我的bean,我需要的只是一种设置它的方法。
答
我找到了解决方案,很简单。您只需在地图上输入所需的页码,并将文件路径添加到叠加层。
像这样:
ovmap.put(2, "Path");