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

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

Introduction

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

Prototype


public int getPageNumber() 

Source Link

Document

Gets the pagenumber of this document.

Usage

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

License:Open Source License

@Override
public void onEndPage(PdfWriter writer, Document document) {
    try {/*  w ww.j  av  a  2 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.PdfDocument.java

License:Open Source License

public int createFile(String path) {
    // DIN A6 105 x 148 mm
    Document document = new Document(getPageSize(), rightMargin, leftMargin, topMargin, bottomMargin);
    if (!path.endsWith(".pdf")) {
        path += ".pdf";
    }/* www.j  a  v  a  2  s  .  c o  m*/
    // if (!MyFile.fileExist(path)) {
    try {
        PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(path));
        addEvent(writer);
        generatePDF(document, writer);
        return writer.getPageNumber();
    } catch (NullPointerException e) {
        PdfExporterLog.errorMessage(this.getClass().getName(), e);
        return 0;
    } catch (EmptyPdfBodyException | IOException e) {
        PdfExporterLog.errorMessage(this.getClass().getName(), e);
        return 0;
    } catch (Exception e) {
        PdfExporterLog.errorMessage(this.getClass().getName(), e);
        return 0;
    }
    // }
}

From source file:com.vectorprint.report.itext.EventHelper.java

License:Open Source License

/**
 * prints a footer table with a line at the top, a date and page numbering, second cell will be right aligned
 *
 * @see #PAGEFOOTERTABLEKEY/*from w  w w.  ja va  2s  . co m*/
 * @see #PAGEFOOTERSTYLEKEY
 *
 * @param writer
 * @param document
 * @throws DocumentException
 * @throws VectorPrintException
 */
protected void renderFooter(PdfWriter writer, Document document)
        throws DocumentException, VectorPrintException, InstantiationException, IllegalAccessException {
    if (!debugHereAfter && !failuresHereAfter) {
        PdfPTable footerTable = elementProducer.createElement(null, PdfPTable.class,
                getStylers(PAGEFOOTERTABLEKEY));

        footerTable.addCell(createFooterCell(ValueHelper.createDate(new Date())));

        String pageText = writer.getPageNumber() + getSettings().getProperty(" of ", UPTO);

        PdfPCell c = createFooterCell(pageText);
        c.setHorizontalAlignment(Element.ALIGN_RIGHT);
        footerTable.addCell(c);

        footerTable.addCell(createFooterCell(new Chunk()));
        footerTable.writeSelectedRows(0, -1, document.getPageSize().getLeft() + document.leftMargin(),
                document.getPageSize().getBottom(document.bottomMargin()), writer.getDirectContentUnder());
        footerBottom = document.bottom() - footerTable.getTotalHeight();
    }
}

From source file:dbedit.actions.ExportPdfAction.java

License:Open Source License

/**
 * Print page numbers on right bottom corner
 * @param writer//from w ww .  ja va 2s . co m
 * @param document
 */
@Override
public void onEndPage(PdfWriter writer, Document document) {
    PdfContentByte cb = writer.getDirectContent();
    String text = String.format("Page %d of ", writer.getPageNumber());
    float textSize = BASE_FONT.getWidthPoint(text, 12);
    float textBase = document.bottom() - 20;
    cb.beginText();
    cb.setFontAndSize(BASE_FONT, 12);
    float adjust = BASE_FONT.getWidthPoint("000", 12);
    cb.setTextMatrix(document.right() - textSize - adjust, textBase);
    cb.showText(text);
    cb.endText();
    cb.addTemplate(pdfTemplate, document.right() - adjust, textBase);
}

From source file:dbedit.actions.ExportPdfAction.java

License:Open Source License

/**
 * Append total number of pages on each page after the page number
 * @param writer//from  w w w . ja v  a 2 s .  co m
 * @param document
 */
@Override
public void onCloseDocument(PdfWriter writer, Document document) {
    pdfTemplate.beginText();
    pdfTemplate.setFontAndSize(BASE_FONT, 12);
    pdfTemplate.showText(String.valueOf(writer.getPageNumber() - 1));
    pdfTemplate.endText();
}

From source file:de.jost_net.JVerein.io.HeaderFooter.java

License:Open Source License

/**
 * Adds the header and the footer.//from ww w  .  j ava2 s . c  om
 * 
 */
@Override
public void onEndPage(PdfWriter writer, Document document) {
    Rectangle rect = document.getPageSize();
    switch (writer.getPageNumber() % 2) {
    case 0:
        // ColumnText.showTextAligned(writer.getDirectContent(),
        // Element.ALIGN_RIGHT, header[0], rect.getRight(), rect.getTop(), 0);
        break;
    case 1:
        // ColumnText.showTextAligned(writer.getDirectContent(),
        // Element.ALIGN_LEFT,
        // header[1], rect.getLeft(), rect.getTop(), 0);
        break;
    }
    float left = rect.getLeft() + document.leftMargin();
    float right = rect.getRight() - document.rightMargin();
    float bottom = rect.getBottom() + document.bottomMargin();
    PdfContentByte pc = writer.getDirectContent();
    pc.setColorStroke(BaseColor.BLACK);
    pc.setLineWidth(0.5f);
    pc.moveTo(left, bottom - 5);
    pc.lineTo(right, bottom - 5);
    pc.stroke();
    pc.moveTo(left, bottom - 25);
    pc.lineTo(right, bottom - 25);
    pc.stroke();

    ColumnText.showTextAligned(pc, Element.ALIGN_CENTER,
            new Phrase(footer + " " + pagenumber, Reporter.getFreeSans(7)), (left + right) / 2, bottom - 18, 0);
}

From source file:direccion.GeneradorFormato.java

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

    Rectangle rect = writer.getBoxSize("art");
    Image imghead = null;/*from w  w  w.  ja  v a 2  s.c  om*/
    PdfContentByte cbhead = null;

    //        try {
    //            imghead = Image.getInstance("LogoSapito5.png");
    //            imghead.setAbsolutePosition(0, 0);
    //            imghead.setAlignment(Image.ALIGN_CENTER);
    //            imghead.scalePercent(10f);
    //            cbhead = writer.getDirectContent();
    //            PdfTemplate tp = cbhead.createTemplate(100, 150);
    //            tp.addImage(imghead);
    //            cbhead.addTemplate(tp, 100, 715);
    //        } catch (BadElementException e) {
    //            e.printStackTrace();
    //        } catch (IOException e) {
    //            e.printStackTrace();
    //        } catch (DocumentException e) {
    //            e.printStackTrace();
    //        }

    Phrase headPhraseImg = new Phrase(cbhead + "",
            FontFactory.getFont(FontFactory.TIMES_ROMAN, 7, Font.NORMAL));

    Calendar c1 = Calendar.getInstance();
    Calendar c2 = new GregorianCalendar();
    String dia, mes, annio;
    dia = Integer.toString(c1.get(Calendar.DATE));
    mes = Integer.toString(c1.get(Calendar.MONTH));
    annio = Integer.toString(c1.get(Calendar.YEAR));
    Date fecha = new Date();
    String fechis = dia + "/" + mes + "/" + annio;

    Paragraph parrafo5 = new Paragraph(fechis,
            FontFactory.getFont(FontFactory.TIMES_ROMAN, 11, Font.NORMAL, BaseColor.BLACK));
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase(parrafo5),
            rect.getRight(450), rect.getTop(-80), 0);

    Paragraph parrafo7 = new Paragraph("Empresa Sapito S.A. de C.V.",
            FontFactory.getFont(FontFactory.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK));
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase(parrafo7),
            rect.getBottom(250), rect.getTop(-60), 0);

    Paragraph parrafo8 = new Paragraph("Reporte algoooooo",
            FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.BOLD, BaseColor.BLACK));
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase(parrafo8),
            rect.getBottom(250), rect.getTop(-40), 0);

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_BOTTOM, new Phrase(
            "      _____________________________________________________________________________________    "),
            rect.getBorder(), rect.getTop(650), 0);

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_BOTTOM, new Phrase(
            "      _____________________________________________________________________________________    "),
            rect.getBorder(), rect.getTop(-24), 0);

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_BOTTOM, new Phrase(
            "      _____________________________________________________________________________________    "),
            rect.getBorder(), rect.getTop(-20), 0);

    Paragraph parrafo6 = new Paragraph(String.format("Pg %d", writer.getPageNumber()),
            FontFactory.getFont(FontFactory.TIMES_ROMAN, 11, Font.NORMAL, BaseColor.BLACK));
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase(parrafo6),
            rect.getRight(-35), rect.getTop(-80), 0);
}

From source file:eu.aniketos.wp1.ststool.report.pdfgenerator.PdfGenerator.java

License:Open Source License

private int createPdf(OutputStream os, int indexSize, IProgressMonitor monitor)
        throws DocumentException, IOException {

    Document document = new Document(PageSize.A4, MARGIN_LEFT, MARGIN_RIGHT, MARGIN_UP, MARGIN_DOWN);

    PdfWriter writer = PdfWriter.getInstance(document, os);

    writer.setStrictImageSequence(true);

    writer.setLinearPageMode();// used to reorder page;
    // writer.setPdfVersion(PdfWriter.PDF_VERSION_1_6);
    ChapterSectionTOC event = new ChapterSectionTOC();
    writer.setPageEvent(event);//from  w w w  . j  a v  a 2  s.c  om
    event.pagenumber = rcf.startingPageNumber();
    writer.setBoxSize("art",
            new Rectangle(MARGIN_LEFT, 0, PageSize.A4.getWidth() - MARGIN_RIGHT, FOOTER_HEIGHT));

    monitor.beginTask("Generating Report", 100);

    document.open();
    rcf.buildContent(writer, document, new SubProgressMonitor(monitor, 85));

    if (rcf.buildIndex()) {
        document.newPage();
        event.setIndex(true);
        int toc = writer.getPageNumber();
        buildIndex(writer, document);
        document.newPage();

        monitor.worked(10);

        int total = writer.reorderPages(null);
        int tocLenght = total - toc + 1;
        int[] order = new int[total];
        order[0] = 1;
        for (int i = 0; i < tocLenght; i++) {
            order[i + 1] = toc + i;
        }
        for (int i = 2; i < toc; i++) {
            order[i + tocLenght - 1] = i;
        }
        writer.reorderPages(order);
        document.close();
        monitor.worked(5);
        return tocLenght;
    }
    return -1;
}

From source file:fll.util.SimpleFooterHandler.java

License:Open Source License

@Override
public void onEndPage(final PdfWriter writer, final Document document) {
    final PdfContentByte cb = writer.getDirectContent();
    cb.saveState();/* www.ja v a 2 s .co  m*/

    // compose the footer
    final String text = "Page " + writer.getPageNumber() + " of ";
    final float textSize = _headerFooterFont.getWidthPoint(text, 12);
    final float textBase = document.bottom() - 20;
    cb.beginText();
    cb.setFontAndSize(_headerFooterFont, 12);

    final float adjust = _headerFooterFont.getWidthPoint("0", 12);
    cb.setTextMatrix(document.right() - textSize - adjust, textBase);
    cb.showText(text);
    cb.endText();
    cb.addTemplate(_tpl, document.right() - adjust, textBase);

    cb.restoreState();
}

From source file:fll.util.SimpleFooterHandler.java

License:Open Source License

@Override
public void onCloseDocument(final PdfWriter writer, final Document document) {
    _tpl.beginText();//from  w  w  w.  j  a va2s .c  o m
    _tpl.setFontAndSize(_headerFooterFont, 12);
    _tpl.setTextMatrix(0, 0);
    _tpl.showText("" + (writer.getPageNumber() - 1));
    _tpl.endText();
}