Java PDFBox设置覆盖在特定页面上

Java PDFBox设置覆盖在特定页面上,java,pdf,pdfbox,Java,Pdf,Pdfbox,我编写了一个webapp,它将.pdf与.png文件合并。一切正常,除了输入PDF有多个页面时,因为PDFBox没有选择要覆盖的特定页面的功能。它只有第一页、最后一页、奇数页、偶数页或所有页。我首先使用PDFBox将.png保存在新的PDF上。我的合并方法使用.pngPDF作为覆盖,并将其放在输入PDF上 我的合并代码如下: File file2 = new File(getImagePdfLocation()); PDDocument overlayDoc =

我编写了一个webapp,它将
.pdf
.png
文件合并。一切正常,除了输入PDF有多个页面时,因为PDFBox没有选择要覆盖的特定页面的功能。它只有第一页、最后一页、奇数页、偶数页或所有页。我首先使用PDFBox将.png保存在新的PDF上。我的合并方法使用.pngPDF作为覆盖,并将其放在输入PDF上

我的合并代码如下:

        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();
File file2=新文件(getImagePdfLocation());
PDDocument overlayDoc=PDDocument.load(file2);
Overlay overlayObj=新覆盖();
PDDocument originalDoc=PDDocument.load(新文件(“路径”);
覆盖bj.setOverlayPosition(覆盖位置前景);
overlayObj.setInputPDF(originalDoc);
overlayObj.setAllPagesOverlayPDF(overlayDoc)//选择?
Map ovmap=newhashmap();
叠加(ovmap);
原始数据保存(“路径”);
overlayDoc.close();
originalDoc.close();
有什么功能我忽略了,或者你能建议一个解决方法吗


我有一个Javascript,可以检索当前的页码并将其传递给我的bean,我所需要的只是一种设置它的方法。

我找到了解决方案,非常简单。您只需在地图上输入所需的页码和覆盖的文件路径即可

像这样:

    ovmap.put(2, "Path");