@Override public PageStamp createPageStamp(PdfImportedPage iPage) { checkPdfAInfo(iPage.readerInstance.getReader()); return super.createPageStamp(iPage); }
for (int i = 1; i <= reader1.getNumberOfPages(); i++) { page = copy.getImportedPage(reader1, i); stamp = copy.createPageStamp(page); phrase = new Phrase("page " + i, font); ColumnText.showTextAligned(stamp.getOverContent(), Element.ALIGN_CENTER, phrase, 520, 5, 0); stamp = copy.createPageStamp(page); phrase = new Phrase("page " + (n + i), font); ColumnText.showTextAligned(stamp.getOverContent(), Element.ALIGN_CENTER, phrase, 520, 5, 0);
Document document = new Document(); PdfCopy copy = new PdfCopy(document, new FileOutputStream(filename)); PageStamp stamp; document.open(); int n; int pageNo = 0; PdfImportedPage page; Chunk chunk; for (Map.Entry<String, PdfReader> entry : filesToMerge.entrySet()) { n = entry.getValue().getNumberOfPages(); for (int i = 0; i < n; ) { pageNo++; page = copy.getImportedPage(entry.getValue(), ++i); stamp = copy.createPageStamp(page); chunk = new Chunk(String.format("Page %d", pageNo)); if (i == 1) chunk.setLocalDestination("p" + pageNo); ColumnText.showTextAligned(stamp.getUnderContent(), Element.ALIGN_RIGHT, new Phrase(chunk), 559, 810, 0); stamp.alterContents(); copy.addPage(page); } } document.close(); for (PdfReader r : filesToMerge.values()) { r.close(); } reader.close();
PageStamp pageStamp = copy.createPageStamp(importedPage); addHilitePageBlock(pageStamp); copy.addPage(importedPage);