Example usage for com.itextpdf.text.pdf ColumnText showTextAligned

List of usage examples for com.itextpdf.text.pdf ColumnText showTextAligned

Introduction

In this page you can find the example usage for com.itextpdf.text.pdf ColumnText showTextAligned.

Prototype

public static void showTextAligned(final PdfContentByte canvas, final int alignment, final Phrase phrase,
        final float x, final float y, final float rotation) 

Source Link

Document

Shows a line of text.

Usage

From source file:com.automaster.autoview.server.servlet.TableHeader.java

/**
 * Fills out the total number of pages before the document is closed.
 * @see com.itextpdf.text.pdf.PdfPageEventHelper#onCloseDocument(
 *      com.itextpdf.text.pdf.PdfWriter, com.itextpdf.text.Document)
 *///  w w  w  . ja  va  2 s . co  m
public void onCloseDocument(PdfWriter writer, Document document) {
    ColumnText.showTextAligned(total, Element.ALIGN_LEFT,
            new Phrase(String.valueOf(writer.getPageNumber() - 1)), 2, 2, 0);
}

From source file:com.bdaum.zoom.ui.internal.dialogs.ExhibitionEditDialog.java

License:Open Source License

private void writeDocument(Document document, File targetFile) {
    boolean frame = detailTabfolder.getSelectionIndex() == 1;
    try (FileOutputStream out = new FileOutputStream(targetFile)) {
        PdfWriter writer = PdfWriter.getInstance(document, out);
        document.open();//  ww  w  .j a  v a2s  .  c  om
        writer.setPageEvent(new PdfPageEventHelper() {
            int pageNo = 0;
            com.itextpdf.text.Font ffont = new com.itextpdf.text.Font(
                    com.itextpdf.text.Font.FontFamily.HELVETICA, 9, com.itextpdf.text.Font.NORMAL,
                    BaseColor.DARK_GRAY);

            @Override
            public void onEndPage(PdfWriter w, Document d) {
                PdfContentByte cb = w.getDirectContent();
                Phrase footer = new Phrase(String.valueOf(++pageNo), ffont);
                ColumnText.showTextAligned(cb, Element.ALIGN_CENTER, footer,
                        (document.right() - document.left()) / 2 + document.leftMargin(), document.bottom(), 0);
            }
        });
        String tit = NLS.bind(Messages.ExhibitionEditDialog_exhibition_name, nameField.getText());
        Paragraph p = new Paragraph(tit,
                FontFactory.getFont(FontFactory.HELVETICA, 14, com.itextpdf.text.Font.BOLD, BaseColor.BLACK));
        p.setAlignment(Element.ALIGN_CENTER);
        p.setSpacingAfter(8);
        document.add(p);
        String subtitle = NLS.bind(Messages.ExhibitionEditDialog_image_list, Constants.DFDT.format(new Date()),
                frame ? Messages.ExhibitionEditDialog_image_sizes : Messages.ExhibitionEditDialog_frame_sizes);
        p = new Paragraph(subtitle,
                FontFactory.getFont(FontFactory.HELVETICA, 10, com.itextpdf.text.Font.NORMAL, BaseColor.BLACK));
        p.setAlignment(Element.ALIGN_CENTER);
        p.setSpacingAfter(14);
        document.add(p);
        p = new Paragraph(descriptionField.getText(),
                FontFactory.getFont(FontFactory.HELVETICA, 10, com.itextpdf.text.Font.NORMAL, BaseColor.BLACK));
        p.setAlignment(Element.ALIGN_CENTER);
        p.setSpacingAfter(10);
        document.add(p);
        p = new Paragraph(infoField.getText(),
                FontFactory.getFont(FontFactory.HELVETICA, 10, com.itextpdf.text.Font.NORMAL, BaseColor.BLACK));
        p.setAlignment(Element.ALIGN_CENTER);
        p.setSpacingAfter(10);
        document.add(p);
        IDbManager db = Core.getCore().getDbManager();
        List<Wall> walls = current.getWall();
        Wall[] sortedWalls = walls.toArray(new Wall[walls.size()]);
        Arrays.sort(sortedWalls, new Comparator<Wall>() {
            public int compare(Wall o1, Wall o2) {
                return o1.getLocation().compareToIgnoreCase(o2.getLocation());
            }
        });
        for (Wall wall : sortedWalls) {
            p = new Paragraph(wall.getLocation(), FontFactory.getFont(FontFactory.HELVETICA, 12,
                    com.itextpdf.text.Font.BOLD, BaseColor.BLACK));
            p.setAlignment(Element.ALIGN_LEFT);
            p.setSpacingAfter(12);
            document.add(p);
            PdfPTable table = new PdfPTable(7);
            // table.setBorderWidth(1);
            // table.setBorderColor(new Color(224, 224, 224));
            // table.setPadding(5);
            // table.setSpacing(0);
            table.setWidths(new int[] { 8, 33, 13, 13, 20, 13, 20 });
            table.addCell(createTableHeader(Messages.ExhibitionEditDialog_No, Element.ALIGN_RIGHT));
            table.addCell(createTableHeader(Messages.ExhibitionEditDialog_title, Element.ALIGN_LEFT));
            table.addCell(createTableHeader(Messages.ExhibitionEditDialog_xpos, Element.ALIGN_RIGHT));
            table.addCell(createTableHeader(Messages.ExhibitionEditDialog_height, Element.ALIGN_RIGHT));
            table.addCell(createTableHeader(Messages.ExhibitionEditDialog_size, Element.ALIGN_RIGHT));
            table.addCell(createTableHeader(Messages.ExhibitionEditDialog_dpi, Element.ALIGN_RIGHT));
            table.addCell(createTableHeader("", Element.ALIGN_LEFT)); //$NON-NLS-1$
            // table.endHeaders();
            List<ExhibitImpl> exhibits = new ArrayList<ExhibitImpl>();
            for (String exhibitId : wall.getExhibit()) {
                ExhibitImpl exhibit = db.obtainById(ExhibitImpl.class, exhibitId);
                if (exhibit != null)
                    exhibits.add(exhibit);
            }
            Collections.sort(exhibits, new Comparator<ExhibitImpl>() {
                public int compare(ExhibitImpl e1, ExhibitImpl e2) {
                    return ((Exhibit) e1).getX() - ((Exhibit) e2).getX();
                }
            });
            int no = 1;
            for (ExhibitImpl exhibit : exhibits) {
                int tara = computeTara(frame, exhibit);
                table.addCell(createTableCell(String.valueOf(no++), Element.ALIGN_RIGHT));
                table.addCell(createTableCell(exhibit.getTitle(), Element.ALIGN_LEFT));
                af.setMaximumFractionDigits(2);
                af.setMinimumFractionDigits(2);
                String x = af.format((exhibit.getX() - tara) / 1000d);
                table.addCell(createTableCell(NLS.bind("{0} m", x), Element.ALIGN_RIGHT)); //$NON-NLS-1$
                String y = af.format((exhibit.getY() + tara) / 1000d);
                table.addCell(createTableCell(NLS.bind("{0} m", y), Element.ALIGN_RIGHT)); //$NON-NLS-1$
                af.setMaximumFractionDigits(1);
                af.setMinimumFractionDigits(1);
                String h = af.format((exhibit.getHeight() + 2 * tara) / 10d);
                int width = exhibit.getWidth();
                String w = af.format((width + 2 * tara) / 10d);
                table.addCell(createTableCell(NLS.bind("{0} x {1} cm", w, h), Element.ALIGN_RIGHT)); //$NON-NLS-1$
                AssetImpl asset = dbManager.obtainAsset(exhibit.getAsset());
                if (asset != null) {
                    int pixels = asset.getWidth();
                    double dpi = pixels * 25.4d / width;
                    table.addCell(createTableCell(String.valueOf((int) dpi), Element.ALIGN_RIGHT));
                } else
                    table.addCell(""); //$NON-NLS-1$
                table.addCell(createTableCell(exhibit.getSold() ? Messages.ExhibitionEditDialog_sold : "", //$NON-NLS-1$
                        Element.ALIGN_LEFT));
            }
            document.add(table);
        }
        document.close();
    } catch (DocumentException e) {
        UiActivator.getDefault().logError(Messages.ExhibitionEditDialog_internal_error_writing_pdf, e);
    } catch (IOException e) {
        UiActivator.getDefault().logError(Messages.ExhibitionEditDialog_io_error_writing_pdf, e);
    }
}

From source file:com.github.ukase.service.PdfRenderer.java

License:Open Source License

private void addSampleWatermark(ByteArrayOutputStream baos, char pdfVersion)
        throws IOException, DocumentException {
    PdfReader reader = new PdfReader(baos.toByteArray());
    baos.reset();/*from   w  w w  .j  a  v a  2  s. c o m*/
    Phrase phrase = new Phrase(waterMark.getText(), font);
    PdfStamper stamper = new PdfStamper(reader, baos, pdfVersion);
    for (int i = 1; i <= reader.getNumberOfPages(); i++) {
        PdfContentByte canvas = stamper.getUnderContent(i);
        ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase, waterMark.getX(), waterMark.getY(),
                waterMark.getDegree());
    }
    stamper.close();
    reader.close();
}

From source file:com.github.wolfposd.imsqti2pdf.HeaderFooter.java

License:Open Source License

private void pageNumberFooter(PdfWriter writer, Rectangle rect) {
    Chunk c = new Chunk(
            String.format(LocaleStrings.getString("page"), writer.getPageNumber(), _maximumPageNumber));
    c.setFont(new Font(FontFamily.HELVETICA, 10));
    Phrase pagephrase = new Phrase(c);

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, pagephrase,
            rect.getRight() - 60, rect.getBottom() - 30, 0);
}

From source file:com.github.wolfposd.imsqti2pdf.HeaderFooter.java

License:Open Source License

private void sumSymboltoFooter(PdfWriter writer, Rectangle rect) {
    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, _sumSymbol, rect.getLeft() - 10,
            rect.getBottom() - 30, 0);//  w w w  .  j  a v a 2s  .com
}

From source file:com.github.wolfposd.imsqti2pdf.HeaderFooter.java

License:Open Source License

@SuppressWarnings("unused")
private void headerText(PdfWriter writer, Rectangle rect) {
    float center = (rect.getLeft() + rect.getRight()) / 2;

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase("Header Text"),
            center, rect.getTop(), 0);// w ww  .  j  a  v  a  2s .  c  om

    ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase("01.01.1970"),
            center, rect.getTop() - 16, 0);
}

From source file:com.kohmiho.mpsr.export.PDFGenerator.java

private void generatePageHeader(Document document, PdfContentByte directContentUnder, Image image,
        Phrase[] headerTexts) {//from  ww w. j a  v  a  2 s  .  c  o  m

    float left = document.getPageSize().getLeft(36);
    float top = document.getPageSize().getTop(36);
    float right = document.getPageSize().getRight(36);

    try {
        image.setAbsolutePosition(right - 150, top - 20);
        // image.setAlignment(Element.ALIGN_RIGHT);
        image.scalePercent(25);
        directContentUnder.addImage(image);
    } catch (DocumentException e) {
    }

    int i = 0;
    for (Phrase headerText : headerTexts) {
        ColumnText.showTextAligned(directContentUnder, Element.ALIGN_LEFT, headerText, left + 36,
                top - 10 * (i++), 0);
    }
}

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  ww  .j  av a  2s.c o  m

    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.softwaremagico.tm.pdf.complete.events.FooterEvent.java

License:Open Source License

/**
 * Adds a footer to every page//www .  ja  v a  2  s.com
 *
 * @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/*from  w  w w .  j a v  a2 s .  c  om*/
 *
 * @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);
}