Example usage for com.itextpdf.text.pdf PdfWriter getDirectContent

List of usage examples for com.itextpdf.text.pdf PdfWriter getDirectContent

Introduction

In this page you can find the example usage for com.itextpdf.text.pdf PdfWriter getDirectContent.

Prototype


public PdfContentByte getDirectContent() 

Source Link

Document

Use this method to get the direct content for this document.

Usage

From source file:ryerson.daspub.artifact.PublishQRTagSheetTask.java

License:Open Source License

/**
 * Draw rectangle//from   w w  w.j a  v a 2s  . c om
 * @param Writer
 * @param x Start X coordinate
 * @param y Start Y coordinate
 * @param w Width
 * @param h Height
 * @param t Stroke thickness
 */
private static void drawRectangle(PdfWriter Writer, int x, int y, int w, int h, float t) {
    PdfContentByte cb = Writer.getDirectContent();
    cb.rectangle(x, y, w, h);
    cb.setLineWidth(t);
    cb.stroke();
}

From source file:sandbox.columntext.DropTablePart.java

public void createPdf(String dest) throws IOException, DocumentException {
    Document document = new Document();
    PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(dest));
    document.open();//from w w w. j ava2 s  .  c  o m
    Rectangle column = new Rectangle(36, 36, 559, 806);
    ColumnText ct = new ColumnText(writer.getDirectContent());
    ct.setSimpleColumn(column);
    for (int i = 0; i < 4;) {
        PdfPTable table = new PdfPTable(new float[] { 0.25f, 0.25f, 0.25f, 0.25f });
        table.setHorizontalAlignment(Element.ALIGN_LEFT);
        table.setWidthPercentage(100);
        PdfPCell cell = new PdfPCell(new Phrase("inner table " + (++i)));
        cell.setColspan(4);
        table.addCell(cell);
        for (int j = 0; j < 18; j++) {
            table.addCell(new Phrase("test Data " + (j + 1) + ".1"));
            table.addCell(new Phrase("test Data " + (j + 1) + ".1"));
            table.addCell(new Phrase("test Data " + (j + 1) + ".1"));
            table.addCell(new Phrase("test Data " + (j + 1) + ".1"));
        }
        ct.addElement(table);
        if (ColumnText.hasMoreText(ct.go())) {
            document.newPage();
            ct = new ColumnText(writer.getDirectContent());
            ct.setSimpleColumn(column);
        }
    }
    document.close();
}

From source file:sandbox.xmlworker.reporting.FillTemplateHelper.java

@Override
public void onOpenDocument(PdfWriter writer, Document document) {
    background = writer.getImportedPage(reader, 1);
    total = writer.getDirectContent().createTemplate(30, 15);
    Calendar c = Calendar.getInstance();
    c.set(2015, 9, 13);/*w  w w  . j  ava 2  s  . c o  m*/
    today = DateFormat.getDateInstance(DateFormat.LONG, Locale.US).format(c.getTime());
}

From source file:se.billes.pdf.renderer.process.CutmarksRenderer.java

License:Open Source License

public void render(PdfWriter writer, Document document) {

    Cutmarks cutmarks = request.getCutmarks();
    if (cutmarks != null && !cutmarks.isIgnoreCutStroke()) {

        float width = SizeFactory.CUT_MARK;
        float height = SizeFactory.CUT_MARK;
        float lineWidth = SizeFactory.CUT_MARK_LINE;
        float lineHeight = SizeFactory.CUT_MARK_LINE;
        Rectangle rect = document.getPageSize();
        PdfContentByte cb = writer.getDirectContent();
        cb.setLineWidth(0.1f);/*  ww  w  . j a v  a  2s  . c  o m*/

        cb.moveTo(SizeFactory.millimetersToPostscriptPoints(width), 0);
        cb.lineTo(SizeFactory.millimetersToPostscriptPoints(width),
                SizeFactory.millimetersToPostscriptPoints(lineHeight));
        cb.stroke();

        cb.moveTo(0, SizeFactory.millimetersToPostscriptPoints(height));
        cb.lineTo(SizeFactory.millimetersToPostscriptPoints(lineWidth),
                SizeFactory.millimetersToPostscriptPoints(height));
        cb.stroke();

        // Upper left cut mark
        cb.moveTo(SizeFactory.millimetersToPostscriptPoints(width), rect.getHeight());
        cb.lineTo(SizeFactory.millimetersToPostscriptPoints(width),
                rect.getHeight() - SizeFactory.millimetersToPostscriptPoints(lineHeight));
        cb.stroke();

        cb.moveTo(0, rect.getHeight() - SizeFactory.millimetersToPostscriptPoints(height));
        cb.lineTo(SizeFactory.millimetersToPostscriptPoints(lineWidth),
                rect.getHeight() - SizeFactory.millimetersToPostscriptPoints(height));
        cb.stroke();

        /**
         * Upper right cut mark
         */
        cb.moveTo(rect.getWidth(), rect.getHeight() - SizeFactory.millimetersToPostscriptPoints(height));
        cb.lineTo(rect.getWidth() - SizeFactory.millimetersToPostscriptPoints(lineWidth),
                rect.getHeight() - SizeFactory.millimetersToPostscriptPoints(height));
        cb.stroke();
        cb.moveTo(rect.getWidth() - SizeFactory.millimetersToPostscriptPoints(width), rect.getHeight());
        cb.lineTo(rect.getWidth() - SizeFactory.millimetersToPostscriptPoints(width),
                rect.getHeight() - SizeFactory.millimetersToPostscriptPoints(lineHeight));
        cb.stroke();

        /**
         * Lower right cut mark
         */
        cb.moveTo(rect.getWidth() - SizeFactory.millimetersToPostscriptPoints(width), 0);
        cb.lineTo(rect.getWidth() - SizeFactory.millimetersToPostscriptPoints(width),
                SizeFactory.millimetersToPostscriptPoints(lineHeight));
        cb.stroke();

        cb.moveTo(rect.getWidth(), SizeFactory.millimetersToPostscriptPoints(height));
        cb.lineTo(rect.getWidth() - SizeFactory.millimetersToPostscriptPoints(lineWidth),
                SizeFactory.millimetersToPostscriptPoints(height));
        cb.stroke();
    }
}

From source file:se.billes.pdf.renderer.process.NewPageRenderer.java

License:Open Source License

public void render(PdfWriter writer, Document document) throws PdfRenderException {
    writer.setPageEvent(page);// ww  w .ja va 2s . co m
    if (page.getBlocks() == null || page.getBlocks().length == 0) {
        writer.setPageEmpty(false);
        writer.newPage();
    } else {
        document.newPage();
        PdfContentByte cb = writer.getDirectContent();
        for (BaseElement block : page.getBlocks()) {
            block.onRender(cb);
        }
    }
}

From source file:se.billes.pdf.renderer.process.TemplatePageRenderer.java

License:Open Source License

public void render(PdfWriter writer, Document document) throws PdfRenderException {
    writer.setPageEvent(page);/*from  w w  w. j a v  a  2  s. c om*/
    Template template = page.getTemplate();

    try {
        PdfReader reader = new PdfReader(template.getTemplatePath());
        PdfImportedPage pageImportedPage = writer.getImportedPage(reader, template.getPage());
        Image pdfMirror;

        float width = SizeFactory.CUT_MARK;
        float height = SizeFactory.CUT_MARK;

        pdfMirror = Image.getInstance(pageImportedPage);
        pdfMirror.setAbsolutePosition(SizeFactory.millimetersToPostscriptPoints(width),
                SizeFactory.millimetersToPostscriptPoints(height));
        document.newPage();
        ImageFactory.getInstances().add(new ImageInstance(pdfMirror, reader));
        PdfContentByte cb = writer.getDirectContent();
        try {
            cb.addImage(pdfMirror);
        } catch (DocumentException e) {
            e.printStackTrace();
        }
        if (page.getBlocks() != null) {
            for (BaseElement block : page.getBlocks()) {
                block.onRender(cb);
            }
        }

    } catch (BadElementException e) {
        e.printStackTrace();
        throw new PdfRenderException(e);
    } catch (IOException e) {
        throw new PdfRenderException(e);
    }

}

From source file:se.inera.intyg.rehabstod.service.export.pdf.HeaderEventHandler.java

License:Open Source License

@Override
public void onEndPage(PdfWriter writer, Document document) {

    // Create the header table
    PdfPTable table = new PdfPTable(2);
    table.setTotalWidth(document.getPageSize().getWidth() - (document.leftMargin() + document.rightMargin()));

    // Add out 2 cells
    table.addCell(getLogoCell());//www  .  j av  a  2  s  .com
    table.addCell(printedBy(userName, enhetsNamn));

    // write the table
    table.writeSelectedRows(0, -1, document.leftMargin(),
            document.getPageSize().getTop() - TOP_MARGIN_TO_HEADER, writer.getDirectContent());

}

From source file:se.inera.intyg.rehabstod.service.export.pdf.PageNumberingEventHandler.java

License:Open Source License

/**
 * Creates the PdfTemplate that will hold the total number of pages.
 *
 * @see com.itextpdf.text.pdf.PdfPageEventHelper#onOpenDocument(com.itextpdf.text.pdf.PdfWriter,
 *      com.itextpdf.text.Document)/*from  w w  w .j  a  v a2s .  c om*/
 */
@Override
public void onOpenDocument(PdfWriter writer, Document document) {
    total = writer.getDirectContent().createTemplate(WIDTH, HEIGHT);
}

From source file:se.inera.intyg.rehabstod.service.export.pdf.PageNumberingEventHandler.java

License:Open Source License

/**
 * Adds a header to every page.//from w w w .  j  av  a  2s. c  o  m
 *
 * @see com.itextpdf.text.pdf.PdfPageEventHelper#onEndPage(com.itextpdf.text.pdf.PdfWriter,
 *      com.itextpdf.text.Document)
 */
@Override
public void onEndPage(PdfWriter writer, Document document) {

    try {
        PdfPTable table = new PdfPTable(2);

        table.setTotalWidth(document.getPageSize().getWidth());

        table.getDefaultCell().setHorizontalAlignment(Element.ALIGN_RIGHT);
        table.getDefaultCell().setBorder(Rectangle.NO_BORDER);

        table.addCell(new Phrase(String.valueOf(writer.getPageNumber()), PdfExportConstants.TABLE_CELL_NORMAL));
        PdfPCell cell = new PdfPCell(Image.getInstance(total));
        cell.setBorder(Rectangle.NO_BORDER);
        table.addCell(cell);
        table.writeSelectedRows(0, -1, document.left(), document.bottom(), writer.getDirectContent());

    } catch (DocumentException de) {
        throw new ExceptionConverter(de);
    }
}

From source file:ServletsReportesPDF.FooterPiePaginaiText.java

public void onEndPage(PdfWriter writer, Document document) {
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER,
            new Phrase("Sistema de Informacin para el Manejo de Produccin y Costos del Arroz\nSIMPCA"), 420,
            28, 0);//from  ww  w .  j a v  a  2  s.c  o  m
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase("SIMPCA"), 425, 16,
            0);
}