如何使用iText复制内容并将其放入新创建的pdf中

时间:2018-10-29 08:26:10

标签: java itext

如何从现有pdf复制内容并将其与其他内容一起放入新的pdf

例如

  

第1页标题页面

     

第2页索引

     

第3页[来自另一个pdf的内容]

     

第4页结束页

我尝试了以下代码

我尝试使用pdfstamper但无法获得输出

PdfReader reader = new PdfReader(src);
        PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
        PdfContentByte canvas = stamper.getUnderContent(1);
        PdfReader r;
        PdfImportedPage page;
        for (String path : EXTRA) {
            r = new PdfReader(path);
            page = stamper.getImportedPage(r, 1);
            canvas.addTemplate(page, 0, 0);
            stamper.getWriter().freeReader(r);
            r.close();
        }
        stamper.close();

我尝试过

Chapter chaptertemp = new Chapter(new Paragraph(chapTitleriskassesstemp), i);
                chapTitleriskassesstemp.setLocalDestination(chaptertemp.getTitle().getContent());
                 List<InputStream> list = new ArrayList<InputStream>();


                data.getVendorValidation().forEach(data -> {
                    PdfReader  pdfReader,r;
                     PdfImportedPage page;
                    try {

                        pdfReader = new PdfReader(fileDirectory+data.getFileName());

                         PdfReader reader = new PdfReader(pdfReader);
                            PdfReaderContentParser parser = new PdfReaderContentParser(reader);
                            PrintWriter out = new PrintWriter(new FileOutputStream("a.pdf"));
                            TextExtractionStrategy strategy;
                            for (int ig = 1; ig <= reader.getNumberOfPages(); ig++) {
                                strategy = parser.processContent(ig, new SimpleTextExtractionStrategy());
                                out.println(strategy.getResultantText());
                            }
                            reader.close();
                            out.flush();
                            out.close();

                    } catch (Exception e) {
                        e.printStackTrace();
                    }
            });
                content.add(); // i don't know how to add it to the main object of pdf content

                chapterList.add(); 


            }

1 个答案:

答案 0 :(得分:0)

分别准备了第1页和第2页的PDF A.pdf,以及第4页的一个PDF B.pdf,然后使用iText PdfCopy合并A.pdf,另一个PDF和B.pdf