PdfReader reader = new PdfReader(src); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest)); stamper.insertPage(reader.getNumberOfPages() + 1, reader.getPageSizeWithRotation(1)); stamper.close(); reader.close();
PdfReader reader = new PdfReader(SOURCE); int pageToReplace = NROFPAGETOREPLACE; List<Integer> pagesToKeep = new ArrayList<Integer>(); for (int i = 1; i <= reader.getNumberOfPages(); i++) if (i != pageToReplace) pagesToKeep.add(i); reader.selectPages(pagesToKeep); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(TARGET)); stamper.insertPage(pageToReplace, reader.getPageSizeWithRotation(1)); Image image = Image.getInstance(IMAGESOURCE); stamper.getOverContent(pageToReplace).addImage(image, image.getWidth(), 0, 0, image.getHeight(), 30, 30); stamper.close();
String in = "Original.pdf"; String out = "Original.pdf"; PdfReader reader = new PdfReader(in); ByteArrayOutputStream baos = new ByteArrayOutputStream(); PdfStamper stamper = new PdfStamper(reader, baos ); int totalPages = reader.getNumberOfPages(); stamper.insertPage(totalPages + 1, PageSize.A4); stamper.addAnnotation(PdfAnnotation.createText(stamper.getWriter(), new Rectangle(30f, 750f, 80f, 800f), "inserted page", "This page is the title page.", true, null), reader.getNumberOfPages()); stamper.close(); FileOutputStream fileOutputStream = new FileOutputStream(out); IOUtils.write(baos.toByteArray(), fileOutputStream);
PdfReader insert = new PdfReader(INSERT); PdfReader reader = new PdfReader(src); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(DEST)); stamper.insertPage(4, insert.getPageSize(1)); PdfContentByte cb = stamper.getOverContent(4); cb.addTemplate(stamper.getImportedPage(insert, 1), 0, 0); ... stamper.close();
PdfReader reader = new PdfReader(main_file); PdfReader reader2 = new PdfReader(to_be_inserted); // Create a stamper PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest)); // Create an imported page to be inserted PdfImportedPage page = stamper.getImportedPage(reader2, 1); stamper.insertPage(p, reader2.getPageSize(1)); stamper.getUnderContent(i).addTemplate(page, 0, 0); // Close the stamper and the readers stamper.close(); reader.close(); reader2.close();
try { PdfReader firstPdf = new PdfReader(mainFileWithPath); PdfReader secondPdf =new PdfReader(addFileNameWithPath); // create new pdf with the content from firstPdf PdfStamper stamp = new PdfStamper(firstPdf, new FileOutputStream(outputPDFFile)); stamp.setRotateContents(false); int totalNumOfPagesToInsert = secondPdf.getNumberOfPages(); int i =1; while (i<=totalNumOfPagesToInsert) { // Get a single page from secondPdf with the given pageNo PdfImportedPage page = stamp.getImportedPage(secondPdf,i); //Actual working code // insert new page in to the newly created pdf at specified page number. // choose page size bas stamp.insertPage(INSERT_AT_PAGE_NO + (i-1), secondPdf.getPageSizeWithRotation(i)); //Actual working code // copy the content of the page copied from secondPdf. stamp.getUnderContent(INSERT_AT_PAGE_NO + (i-1)).addTemplate(page, 0, 0); //Actual working code i++; } //close the new created pdf. stamp.close();
PdfReader cover = new PdfReader("hero.pdf"); PdfReader reader = new PdfReader("pages.pdf"); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("cover_with_pages.pdf")); stamper.insertPage(1, cover.getPageSizeWithRotation(1)); PdfContentByte page1 = stamper.getOverContent(1); PdfImportedPage page = stamper.getImportedPage(cover, 1); page1.addTemplate(page, 0, 0); stamper.close(); cover.close(); reader.close();