iText - 将一部分PDF添加到另一部分

时间:2014-05-19 17:50:32

标签: pdf merge itext crop

我有两个PDF。一个是主PDF,另一个是我需要插入第一个的图像。同样在第二个PDF中,插入该图像后,我需要连接第二个PDF的其余部分。

2 个答案:

答案 0 :(得分:0)

解决方案是将带有图像的PDF页面叠加到主PDF上。然后连接其余部分。 “design_section”是包含图像的PDF。这段代码可以:

    PdfReader confirmation_section = new PdfReader(SOURCE);
    PdfReader design_section = new PdfReader(SOURCE2);

    PdfStamper stamper = new PdfStamper(confirmation_section, new FileOutputStream(RESULT));
    PdfImportedPage page = stamper.getImportedPage(design_section, 1);
    int c = confirmation_section.getNumberOfPages();
    PdfContentByte background;
    for (int i = 1; i <= c; i++) {
        background = stamper.getUnderContent(i);
        if(i == c)
            background.addTemplate(page, 0, 0);
    }


    int d = design_section.getNumberOfPages();

    if(d > 1)  {
        for(int f = 2; f <= d; f++) {
            stamper.insertPage(c + f, confirmation_section.getPageSize(1));
            page = stamper.getImportedPage(design_section, f);
            stamper.getOverContent(c + f - 1).addTemplate(page, 0, 0);
            System.out.println("here we are in the loop c + f is: " + (c + f));
        }
    }

    stamper.close();

iText的指向建议 - 如何将“addTemplate()”重命名为“addPage()”??? iText是我使用过的最神秘的lib,包括regexp

答案 1 :(得分:0)

感谢您的跟进。我确实读了很多次)))老实说,至少6次。我知道这只是一个摘录,我相信书中有更多有价值的信息,但据说,我找不到我想要的东西。在该文本中,它是在讨论,比较和区分PdfCopy PDFStamper和PDFReader / Writer的背景下,例如,将页面从一个PDF添加到另一个PDF?