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:com.photon.phresco.framework.docs.impl.DocumentUtil.java

License:Apache License

/**
 * @param titleSection//from  ww w .  j  a va2s .c om
 * @param writer
 * @param docu
 * @throws PhrescoException 
 */
public static void addPages(InputStream titleSection, PdfWriter writer, com.itextpdf.text.Document docu)
        throws PhrescoException {
    if (isDebugEnabled) {
        S_LOGGER.debug(
                "Entering Method DocumentUtil.addPages(InputStream titleSection, PdfWriter writer, com.itextpdf.text.Document docu)");
    }
    try {
        PdfReader reader = new PdfReader(titleSection);
        reader.consolidateNamedDestinations();
        PdfContentByte cb = writer.getDirectContent();

        int pages = reader.getNumberOfPages();
        for (int i = 1; i <= pages; i++) {
            PdfImportedPage importedPage = writer.getImportedPage(reader, i);
            cb.addTemplate(importedPage, 0, 0);
            docu.newPage();
        }
    } catch (IOException e) {
        e.printStackTrace();
        throw new PhrescoException(e);
    }
}

From source file:com.photon.phresco.service.docs.impl.DocumentUtil.java

License:Apache License

/**
 * @param titleSection//from   w w w .  j a  v  a  2s .c  o  m
 * @param writer
 * @param docu
 * @throws IOException
 * @throws DocumentException
 */
public static void addPages(InputStream titleSection, PdfWriter writer, com.itextpdf.text.Document docu)
        throws IOException, DocumentException {
    if (isDebugEnabled) {
        S_LOGGER.debug(
                "Entering Method DocumentUtil.addPages(InputStream titleSection, PdfWriter writer, com.itextpdf.text.Document docu)");
    }
    PdfReader reader = new PdfReader(titleSection);
    reader.consolidateNamedDestinations();
    PdfContentByte cb = writer.getDirectContent();

    int pages = reader.getNumberOfPages();
    for (int i = 1; i <= pages; i++) {
        PdfImportedPage importedPage = writer.getImportedPage(reader, i);
        cb.addTemplate(importedPage, 0, 0);
        docu.newPage();
    }
}

From source file:com.planfeed.others.HeaderFooter.java

License:Apache License

public void onEndPage(PdfWriter writer, Document document) {
    Rectangle rect = writer.getBoxSize("art");

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_RIGHT, header, rect.getRight(),
            rect.getTop(), 0);/*from   w w w .ja va 2  s  .com*/

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER,
            new Phrase(String.format("page %d", pagenumber)), (rect.getLeft() + rect.getRight()) / 2,
            rect.getBottom() - 18, 0);
}

From source file:com.rapidminer.gui.actions.ExportPdfAction.java

License:Open Source License

/**
 * Create the PDF from a {@link Component}.
 * //from   www. ja  va2s  .  c o m
 * @param component
 */
private void createPdf(Component component) {
    if (component == null) {
        return;
    }

    // prompt user for pdf location
    File file = promptForPdfLocation();
    if (file == null) {
        return;
    }

    try {
        // create pdf document
        Document document = new Document(PageSize.A4);
        PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
        document.open();
        PdfContentByte cb = writer.getDirectContent();
        createPdfViaTemplate(component, document, cb);
        document.close();
    } catch (Exception e) {
        SwingTools.showSimpleErrorMessage("cannot_export_pdf", e, e.getMessage());
    }
}

From source file:com.rapidminer.gui.actions.ExportPdfAction.java

License:Open Source License

/**
 * Create the PDF from a {@link PlotterTemplate}.
 * //from  w  w w  .j  ava  2 s.com
 * @param template
 */
private void createPdf(PlotterTemplate template) {
    if (template == null) {
        return;
    }

    // prompt user for pdf location
    File file = promptForPdfLocation();
    if (file == null) {
        return;
    }

    try {
        // create pdf document
        Document document = new Document(PageSize.A4);
        PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
        document.open();
        PdfContentByte cb = writer.getDirectContent();
        createPdfViaTemplate(template, document, cb);
        document.close();
    } catch (Exception e) {
        SwingTools.showSimpleErrorMessage("cannot_export_pdf", e, e.getMessage());
    }
}

From source file:com.softwaremagico.tm.pdf.complete.events.FooterEvent.java

License:Open Source License

/**
 * Adds a footer to every page/*  w  ww. j a  v a 2 s  .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) {
    if (writer.getPageNumber() % 2 == 0) {
        PdfContentByte cb = writer.getDirectContent();
        Phrase footer = new Phrase(
                "Created using 'Think Machine'"
                        + (Version.getVersion() != null ? " v" + Version.getVersion() : ""),
                new Font(FadingSunsTheme.getFooterFont(), FadingSunsTheme.FOOTER_FONT_SIZE));
        ColumnText.showTextAligned(cb, Element.ALIGN_CENTER, footer,
                (document.right() - document.left()) / 2 + document.leftMargin(), document.bottom() + 20, 0);
    }
}

From source file:com.softwaremagico.tm.pdf.complete.events.PartyFooterEvent.java

License:Open Source License

/**
 * Adds a footer to every page//w ww  . j a v a  2  s. 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) {
    PdfContentByte cb = writer.getDirectContent();
    Phrase footer = new Phrase(
            party.getPartyName() + " - Created using 'Think Machine'"
                    + (Version.getVersion() != null ? " v" + Version.getVersion() : ""),
            new Font(FadingSunsTheme.getFooterFont(), FadingSunsTheme.FOOTER_FONT_SIZE));
    ColumnText.showTextAligned(cb, Element.ALIGN_CENTER, footer,
            (document.right() - document.left()) / 2 + document.leftMargin(), document.bottom() + bottomMargin,
            0);
}

From source file:com.softwaremagico.tm.pdf.complete.events.SheetAlternatedBackgroundEvent.java

License:Open Source License

@Override
public void onEndPage(PdfWriter writer, Document document) {
    try {//from   w  w  w  .  ja  v a2  s .c  om
        if (writer.getPageNumber() % 2 == 1) {
            writer.getDirectContent().addImage(leftCorner);
            writer.getDirectContent().addImage(mainTitleRight);
        }
        if (writer.getPageNumber() % 2 == 0) {
            writer.getDirectContent().addImage(rightCorner);
            writer.getDirectContent().addImage(mainTitleLeft);
        }
    } catch (DocumentException e) {
        PdfExporterLog.errorMessage(this.getClass().getName(), e);
    }
}

From source file:com.softwaremagico.tm.pdf.complete.events.SheetBackgroundEvent.java

License:Open Source License

@Override
public void onEndPage(PdfWriter writer, Document document) {
    try {/*from   ww  w  . ja  v a  2 s  . c  o m*/
        writer.getDirectContent().addImage(leftCorner);
        writer.getDirectContent().addImage(rightCorner);
        writer.getDirectContent().addImage(mainTitle);
    } catch (DocumentException e) {
        PdfExporterLog.errorMessage(this.getClass().getName(), e);
    }
}

From source file:com.swayam.bhasha.engine.io.writers.impl.PDFImageGenerator.java

License:Apache License

private void makePDFPage(HTMLDocModel htmlDoc, String fileName) throws DocGenerationException, IOException {

    BufferedImage image = getImage(pageDim, htmlDoc);

    /*/* ww w  .ja  va 2  s . c  o  m*/
     * ByteArrayOutputStream bos = new ByteArrayOutputStream();
     * 
     * ImageIO.write(image, "JPG", bos);
     * 
     * byte[] imageData = bos.toByteArray();
     * 
     * System.out.println("PDFImageGenerator.makePDFPage() " +
     * imageData.length);
     */

    Rectangle pageSize = PageSize.A4;

    if (image.getHeight() > pageSize.getHeight()) {
        pageSize = new Rectangle(image.getWidth(), image.getHeight());
    }

    Document pdfDoc = new Document(pageSize, MARGINS, MARGINS, MARGINS, MARGINS);

    FileOutputStream pdfStream = null;

    try {
        pdfStream = new FileOutputStream(fileName);

        PdfWriter pdfWriter = PdfWriter.getInstance(pdfDoc, pdfStream);

        pdfDoc.addAuthor("Bhasha PDF Generator (Powered by IText)");

        pdfDoc.open();

        PdfContentByte contentByte = pdfWriter.getDirectContent();

        Image pdfImage = Image.getInstance(image, null);

        pdfImage.setAbsolutePosition(0, 0);
        contentByte.addImage(pdfImage);

    } catch (Exception e) {
        throw new DocGenerationException(e);
    } finally {

        pdfDoc.close();

        if (pdfStream != null) {
            try {
                pdfStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

    }
}