Search in sources :

Example 6 with Canvas

use of com.itextpdf.layout.Canvas in project i7js-highlevel by itext.

the class C02E02_CanvasCut method createPdf.

public void createPdf(String dest) throws IOException {
    // Initialize PDF document
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfPage page = pdf.addNewPage();
    PdfCanvas pdfCanvas = new PdfCanvas(page);
    Rectangle rectangle = new Rectangle(36, 750, 100, 50);
    pdfCanvas.rectangle(rectangle);
    pdfCanvas.stroke();
    Canvas canvas = new Canvas(pdfCanvas, rectangle);
    PdfFont font = PdfFontFactory.createFont(StandardFonts.TIMES_ROMAN);
    PdfFont bold = PdfFontFactory.createFont(StandardFonts.TIMES_BOLD);
    Text title = new Text("The Strange Case of Dr. Jekyll and Mr. Hyde").setFont(bold);
    Text author = new Text("Robert Louis Stevenson").setFont(font);
    Paragraph p = new Paragraph().add(title).add(" by ").add(author);
    canvas.add(p);
    canvas.close();
    // Close document
    pdf.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) Canvas(com.itextpdf.layout.Canvas) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) PdfFont(com.itextpdf.kernel.font.PdfFont) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) Text(com.itextpdf.layout.element.Text) PdfPage(com.itextpdf.kernel.pdf.PdfPage) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Example 7 with Canvas

use of com.itextpdf.layout.Canvas in project i7js-highlevel by itext.

the class C02E04_CanvasReturn method createPdf.

public void createPdf(String dest) throws IOException {
    // Initialize PDF document
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfPage page = pdf.addNewPage();
    PdfCanvas pdfCanvas = new PdfCanvas(page);
    Rectangle rectangle = new Rectangle(36, 650, 100, 100);
    pdfCanvas.rectangle(rectangle);
    pdfCanvas.stroke();
    Canvas canvas1 = new Canvas(pdfCanvas, rectangle);
    PdfFont font = PdfFontFactory.createFont(StandardFonts.TIMES_ROMAN);
    PdfFont bold = PdfFontFactory.createFont(StandardFonts.TIMES_BOLD);
    Text title = new Text("The Strange Case of Dr. Jekyll and Mr. Hyde").setFont(bold);
    Text author = new Text("Robert Louis Stevenson").setFont(font);
    Paragraph p = new Paragraph().add(title).add(" by ").add(author);
    canvas1.add(p);
    canvas1.close();
    PdfPage page2 = pdf.addNewPage();
    PdfCanvas pdfCanvas2 = new PdfCanvas(page2);
    Canvas canvas2 = new Canvas(pdfCanvas2, rectangle);
    canvas2.add(new Paragraph("Dr. Jekyll and Mr. Hyde"));
    canvas2.close();
    PdfPage page1 = pdf.getFirstPage();
    PdfCanvas pdfCanvas1 = new PdfCanvas(page1.newContentStreamBefore(), page1.getResources(), pdf);
    rectangle = new Rectangle(100, 700, 100, 100);
    pdfCanvas1.saveState().setFillColor(ColorConstants.CYAN).rectangle(rectangle).fill().restoreState();
    Canvas canvas = new Canvas(pdfCanvas1, rectangle);
    canvas.add(new Paragraph("Dr. Jekyll and Mr. Hyde"));
    canvas.close();
    // Close document
    pdf.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) Canvas(com.itextpdf.layout.Canvas) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) PdfFont(com.itextpdf.kernel.font.PdfFont) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) Text(com.itextpdf.layout.element.Text) PdfPage(com.itextpdf.kernel.pdf.PdfPage) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Example 8 with Canvas

use of com.itextpdf.layout.Canvas in project i7js-highlevel by itext.

the class C02E01_CanvasExample method createPdf.

public void createPdf(String dest) throws IOException {
    // Initialize PDF document
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfPage page = pdf.addNewPage();
    PdfCanvas pdfCanvas = new PdfCanvas(page);
    Rectangle rectangle = new Rectangle(36, 650, 100, 100);
    pdfCanvas.rectangle(rectangle);
    pdfCanvas.stroke();
    Canvas canvas = new Canvas(pdfCanvas, rectangle);
    PdfFont font = PdfFontFactory.createFont(StandardFonts.TIMES_ROMAN);
    PdfFont bold = PdfFontFactory.createFont(StandardFonts.TIMES_BOLD);
    Text title = new Text("The Strange Case of Dr. Jekyll and Mr. Hyde").setFont(bold);
    Text author = new Text("Robert Louis Stevenson").setFont(font);
    Paragraph p = new Paragraph().add(title).add(" by ").add(author);
    canvas.add(p);
    canvas.close();
    // Close document
    pdf.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) Canvas(com.itextpdf.layout.Canvas) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) PdfFont(com.itextpdf.kernel.font.PdfFont) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) Text(com.itextpdf.layout.element.Text) PdfPage(com.itextpdf.kernel.pdf.PdfPage) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Example 9 with Canvas

use of com.itextpdf.layout.Canvas in project i7js-highlevel by itext.

the class C02E03_CanvasRepeat method createPdf.

public void createPdf(String dest) throws IOException {
    // Initialize PDF document
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfPage page = pdf.addNewPage();
    PdfCanvas pdfCanvas = new PdfCanvas(page);
    Rectangle rectangle = new Rectangle(36, 500, 100, 250);
    pdfCanvas.rectangle(rectangle);
    pdfCanvas.stroke();
    Canvas canvas = new Canvas(pdfCanvas, rectangle);
    MyCanvasRenderer renderer = new MyCanvasRenderer(canvas);
    canvas.setRenderer(renderer);
    PdfFont font = PdfFontFactory.createFont(StandardFonts.TIMES_ROMAN);
    PdfFont bold = PdfFontFactory.createFont(StandardFonts.TIMES_BOLD);
    Text title = new Text("The Strange Case of Dr. Jekyll and Mr. Hyde").setFont(bold);
    Text author = new Text("Robert Louis Stevenson").setFont(font);
    Paragraph p = new Paragraph().add(title).add(" by ").add(author);
    while (!renderer.isFull()) canvas.add(p);
    canvas.close();
    // Close document
    pdf.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) Canvas(com.itextpdf.layout.Canvas) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) PdfFont(com.itextpdf.kernel.font.PdfFont) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) Text(com.itextpdf.layout.element.Text) PdfPage(com.itextpdf.kernel.pdf.PdfPage) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Example 10 with Canvas

use of com.itextpdf.layout.Canvas in project i7js-highlevel by itext.

the class CanvasLayoutMethods method createPdf.

public void createPdf(String dest) throws IOException {
    // Initialize PDF document
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfPage page = pdf.addNewPage();
    PdfCanvas pdfCanvas = new PdfCanvas(page);
    Rectangle rectangle = new Rectangle(36, 36, 523, 770);
    Canvas canvas = new Canvas(pdfCanvas, rectangle);
    Paragraph p;
    p = new Paragraph("Testing layout methods");
    canvas.add(p);
    canvas.setTextAlignment(TextAlignment.CENTER);
    p = new Paragraph("Testing layout methods");
    canvas.add(p);
    p = new Paragraph();
    for (int i = 0; i < 6; i++) p.add("singing supercalifragilisticexpialidocious ");
    canvas.add(p);
    canvas.setHyphenation(new HyphenationConfig("en", "uk", 3, 3));
    canvas.add(p);
    canvas.setTextAlignment(TextAlignment.JUSTIFIED);
    canvas.add(p);
    canvas.setHyphenation(null);
    canvas.setSplitCharacters(new ISplitCharacters() {

        public boolean isSplitCharacter(GlyphLine text, int glyphPos) {
            if (!text.get(glyphPos).hasValidUnicode()) {
                return false;
            }
            int charCode = text.get(glyphPos).getUnicode();
            return (charCode < ' ' || charCode == 'i');
        }
    });
    canvas.add(p);
    canvas.setSplitCharacters(new DefaultSplitCharacters());
    canvas.setTextAlignment(TextAlignment.LEFT);
    canvas.add(p);
    canvas.setWordSpacing(10);
    canvas.add(p);
    canvas.setCharacterSpacing(5);
    canvas.add(p);
    // Close document
    pdf.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) DefaultSplitCharacters(com.itextpdf.layout.splitting.DefaultSplitCharacters) Canvas(com.itextpdf.layout.Canvas) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) Rectangle(com.itextpdf.kernel.geom.Rectangle) GlyphLine(com.itextpdf.io.font.otf.GlyphLine) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) HyphenationConfig(com.itextpdf.layout.hyphenation.HyphenationConfig) PdfPage(com.itextpdf.kernel.pdf.PdfPage) ISplitCharacters(com.itextpdf.layout.splitting.ISplitCharacters) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Aggregations

PdfCanvas (com.itextpdf.kernel.pdf.canvas.PdfCanvas)12 Canvas (com.itextpdf.layout.Canvas)12 Rectangle (com.itextpdf.kernel.geom.Rectangle)11 Paragraph (com.itextpdf.layout.element.Paragraph)8 PdfDocument (com.itextpdf.kernel.pdf.PdfDocument)7 PdfPage (com.itextpdf.kernel.pdf.PdfPage)7 PdfFont (com.itextpdf.kernel.font.PdfFont)6 PdfWriter (com.itextpdf.kernel.pdf.PdfWriter)6 Text (com.itextpdf.layout.element.Text)4 ImageData (com.itextpdf.io.image.ImageData)2 Image (com.itextpdf.layout.element.Image)2 BufferedImage (java.awt.image.BufferedImage)2 GlyphLine (com.itextpdf.io.font.otf.GlyphLine)1 PdfDocumentEvent (com.itextpdf.kernel.events.PdfDocumentEvent)1 PdfException (com.itextpdf.kernel.exceptions.PdfException)1 PdfDictionary (com.itextpdf.kernel.pdf.PdfDictionary)1 PdfName (com.itextpdf.kernel.pdf.PdfName)1 PdfString (com.itextpdf.kernel.pdf.PdfString)1 CanvasArtifact (com.itextpdf.kernel.pdf.canvas.CanvasArtifact)1 Table (com.itextpdf.layout.element.Table)1