Refine search
/** {@inheritDoc} */ @Override public void onEndPage(PdfWriter writer, Document document) { final int pageN = writer.getPageNumber(); final String text = pageN + " / "; final float len = bf.getWidthPoint(text, 8); cb.beginText(); cb.setFontAndSize(bf, 8); final float width = document.getPageSize().getWidth(); cb.setTextMatrix(width / 2, 30); cb.showText(text); cb.endText(); cb.addTemplate(template, width / 2 + len, 30); }
private static void absText(String text, int x, int y) { try { PdfContentByte cb = writer.getDirectContent(); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED); cb.saveState(); cb.beginText(); cb.moveText(x, y); cb.setFontAndSize(bf, 12); cb.showText(text); cb.endText(); cb.restoreState(); } catch (DocumentException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }
/** {@inheritDoc} */ @Override public void onOpenDocument(PdfWriter writer, Document document) { cb = writer.getDirectContent(); template = cb.createTemplate(50, 50); }
PdfWriter writer = ...; PdfContentByte cb = writer.getDirectContent(); cb.saveState(); cb.setColorStroke(Color.black); cb.rectangle(x,y,x1,y1); cb.stroke(); cb.restoreState();
public void resize (float x, float y, float scale) throws Exception { PdfReader reader = new PdfReader(pdfIn); Document doc = new Document(PageSize.LEGAL, 0, 0, 0, 0); PdfWriter writer = PdfWriter.getInstance(doc, new FileOutputStream(pdfOut)); doc.open(); PdfContentByte cb = writer.getDirectContent(); for(int i=1; i<=reader.getNumberOfPages(); i++){ doc.newPage(); PdfImportedPage page = writer.getImportedPage(reader, i); cb.addTemplate(page, scale, 0, 0, scale, x, y); } doc.close(); }
Document document = new Document(PageSize.A4); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("big-panel.pdf")); document.open(); PdfContentByte cb = writer.getDirectContent(); PdfTemplate tp = cb.createTemplate(PageSize.A4.getWidth(), 3 * PageSize.A4.getHeight()); // draw all your content on tp cb.addTemplate(tp, 0, -2 * PageSize.A4.getHeight()); document.newPage(); cb.addTemplate(tp, 0, -PageSize.A4.getHeight()); document.newPage(); cb.addTemplate(tp, 0, 0); document.newPage(); cb.addTemplate(tp, 0.3333f, 0, 0, 0.3333f, PageSize.A4.getWidth() / 3, 0); document.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();
OutputStream outputStream = new FileOutputStream(new File(filename)); Document document = new Document(); PdfWriter writer = PdfWriter.getInstance(document, outputStream); document.open(); PdfContentByte cb = writer.getDirectContent(); PdfOutline pol = cb.getRootOutline(); PdfOutline oline1 = null; InputStream in1 = new FileInputStream(new File(inf1)); PdfReader reader = new PdfReader(in1); for (int i = 1; i <= reader.getNumberOfPages(); i++) { document.newPage(); document.setMargins(0.0F, 18.0F, 18.0F, 18.0F); PdfImportedPage page = writer.getImportedPage(reader, i); document.add(new Chunk(new Integer(i).toString()).setLocalDestination(new Integer(i).toString())); System.out.println(i); cb.addTemplate(page, 0.0F, 0.0F); } outputStream.flush(); document.close(); outputStream.close();
//create doccument and writer Rectangle pagesize = new Rectangle(200, 100); Document document= new Document(pagesize); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("C:\\sample.pdf")); document.open(); //This sample uses the "GOTHIC.TTF" font file located in the "Template" package BaseFont bf = BaseFont.createFont(GUI.class.getClass().getResource("/Template/GOTHIC.TTF") + "", BaseFont.WINANSI, BaseFont.EMBEDDED); //set font type, size and color Font font = new Font(bf, 13.5f); PdfContentByte canvas = writer.getDirectContent(); canvas.beginText(); canvas.setFontAndSize(bf, 10); //Method Usage: showTextAligned(Align, String, x, y, rotation); canvas.showTextAligned(Element.ALIGN_TOP, "My Text Here", 75, 40, 0); canvas.endText(); document.close();
PdfReader reader = new PdfReader("Hello World.pdf"); Document document = new Document(PageSize.A4); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("RESULT.PDF")); document.open(); PdfContentByte canvas = writer.getDirectContent(); PdfImportedPage page; for (int i = 3; i <=6; i++) { page = writer.getImportedPage(reader, i); canvas.addTemplate(page, 1f, 0, 0, 1, 0, i*30-250); } document.close();
PdfReader reader = new PdfReader("HelloWorld.pdf"); PdfStamper pdfStamper = new PdfStamper(reader, new FileOutputStream("NewHelloWorld.pdf")); Image image = Image.getInstance("MyWatermark.png"); for(int i=1; i<= reader.getNumberOfPages(); i++){ PdfContentByte content = pdfStamper.getUnderContent(i); image.setAbsolutePosition(150f, 750f); content.addImage(image); } pdfStamper.close();
public void manipulatePdf(String src, String dest) throws IOException, DocumentException { PdfReader reader = new PdfReader(src); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest)); AffineTransform transform = AffineTransform.getRotateInstance(Math.PI / 2); stamper.getWriter().setPageEvent(new AddAnnotation(stamper, transform)); PdfContentByte canvas = stamper.getOverContent(1); Font bold = new Font(FontFamily.HELVETICA, 12, Font.BOLD); Chunk chunk = new Chunk("The Best iText Questions on StackOverflow", bold); chunk.setGenericTag("http://pages.itextpdf.com/ebook-stackoverflow-questions.html"); Phrase p = new Phrase("Download "); p.add(chunk); p.add(" and discover more than 200 questions and answers."); canvas.saveState(); canvas.concatCTM(transform); ColumnText ct = new ColumnText(canvas); ct.setSimpleColumn(36, -559, 806, -36); ct.addText(p); ct.go(); canvas.restoreState(); stamper.close(); reader.close(); }
PdfReader reader = new PdfReader("template.pdf"); PdfStamper stamper = new PdfStamper( reader, new FileOutputStream("output.pdf")); PdfContentByte content = stamper.getOverContent(1); // first page == 1 Image image = Image.createInstance("someImage.png"); image.setAbsolutePosition( x, y ); image.setAbsoluteHeight( hei ); image.setAbsoluteWidth( wid ); content.addImage(image); // instead of absolutely positioning the image, you can do: //content.addImage( image, wid, 0f, 0f, hei, x, y ); // that's a transformation matrix, you can skew, rotate, scale, etc. stamper.close();
public static void main(String[] args) throws DocumentException, FileNotFoundException, IOException { String TARGET = "temp.pdf"; Document document = new Document(PageSize.A4); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(TARGET)); document.open(); PdfPTable table = new PdfPTable(7); for (int i = 0; i < 700; i++) { Phrase p = new Phrase("some text"); PdfPCell cell = new PdfPCell(); cell.addElement(p); table.addCell(cell); } table.setTotalWidth(PageSize.A4.getWidth()); table.setLockedWidth(true); PdfContentByte canvas = writer.getDirectContent(); PdfTemplate template = canvas.createTemplate(table.getTotalWidth(), table.getTotalHeight()); table.writeSelectedRows(0, -1, 0, table.getTotalHeight(), template); Image img = Image.getInstance(template); img.scaleToFit(PageSize.A4.getWidth(), PageSize.A4.getHeight()); img.setAbsolutePosition(0, (PageSize.A4.getHeight() - table.getTotalHeight()) / 2); document.add(img); document.close(); }
// Open new PDF file Document document = new Document(); PdfWriter pdfWriter = PdfWriter.getInstance(document, new FileOutputStream(getSharedDirPath() + File.separator + "file.pdf")); document.open(); PdfContentByte content = pdfWriter.getDirectContent(); // Load image from external folder Image image = Image.getInstance(path + "/img.png"); image.scaleAbsolute(PageSize.A4); image.setAbsolutePosition(0, 0); float width = PageSize.A4.getWidth(); float heightRatio = image.getHeight() * width / image.getWidth(); int nPages = (int) (heightRatio / PageSize.A4.getHeight()); float difference = heightRatio % PageSize.A4.getHeight(); while (nPages >= 0) { document.newPage(); content.addImage(image, width, 0, 0, heightRatio, 0, -((--nPages * PageSize.A4.getHeight()) + difference)); } // Write PDF file document.close();
File templateFile = new File(dir.getAbsolutePath() + "/templates/standardWO.pdf"); // Read the incoming file PdfReader reader = new PdfReader(intent.getData().getPath()); // Read the template form information PdfReader templateReader = new PdfReader(templateFile.getAbsolutePath()); // Create the stamper from the incoming file. PdfStamper stamper = new PdfStamper(templateReader, new FileOutputStream(file)); // Import the template information PdfImportedPage iPage = stamper.getImportedPage(reader, 1); // get the direct content PdfContentByte cb = stamper.getUnderContent(1); // Add the imported page to the content cb.addTemplate(iPage, 0, 0); stamper.close(); Log.v(TAG, "Opening file in adobe reader: " + file.getAbsolutePath()); loadDocInReader(file);
Document document = new Document(page); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(dest)); document.open(); PdfContentByte canvas = writer.getDirectContentUnder(); canvas.addImage(image, width, 0, 0, height, 0, -height / 2); document.newPage(); canvas.addImage(image, width, 0, 0, height, 0, 0); document.newPage(); canvas.addImage(image, width, 0, 0, height, -width / 2, - height / 2); document.newPage(); canvas.addImage(image, width, 0, 0, height, -width / 2, 0); document.close();
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();
private void renderTitleFooter(PdfWriter writer, Document document){ String text = RomanList.toRomanLowerCase(writer.getPageNumber()); cb_.moveTo(document.left(),PAGEMARGIN_BOTTOM - 5); cb_.lineTo(document.right(),PAGEMARGIN_BOTTOM - 5); cb_.stroke(); // don't forget !! // footer contents cb_.beginText(); cb_.setFontAndSize(PdfUtils.BASEFONT_MINCHO,size_); cb_.setTextMatrix(footerX_, PAGEMARGIN_BOTTOM/2); cb_.showText(text); cb_.endText(); }
PdfContentByte over = ...; over.setFontAndSize(bf, 50); over.beginText(); over.setTextMatrix(110, 384); over.showText("Hello World!"); over.endText();