Java 类com.lowagie.text.rtf.field.RtfTotalPageNumber 实例源码

项目:itext2    文件:TotalPageNumberTest.java   
/**
 * Demonstrates creating a header with page number and total number of pages
 * 
 * 
 */
@Test
public void main() throws Exception {
    Document document = new Document();
    RtfWriter2.getInstance(document, PdfTestBase.getOutputStream("TotalPageNumber.rtf"));

    // Create a new Paragraph for the footer
    Paragraph par = new Paragraph("Page ");

    // Add the RtfPageNumber to the Paragraph
    par.add(new RtfPageNumber());

    // Add the RtfTotalPageNumber to the Paragraph
    par.add(" of ");
    par.add(new RtfTotalPageNumber());

    // Create an RtfHeaderFooter with the Paragraph and set it
    // as a header for the document
    RtfHeaderFooter header = new RtfHeaderFooter(par);
    document.setHeader(header);

    document.open();

    for (int i = 1; i <= 300; i++) {
        document.add(new Paragraph("Line " + i + "."));
    }

    document.close();

}
项目:communote-server    文件:RtfNoteWriter.java   
/**
 * This message creates the footer element for the exported document.
 *
 * @param queryInstance
 *            The query instance to extract needed data from.
 * @param user
 *            The user.
 * @param resourcesManager
 *            The resources manager to retreive resources from.
 * @return An object to be used as a header.
 * @throws MalformedURLException
 *             {@link MalformedURLException}.
 * @throws BadElementException
 *             {@link BadElementException}.
 */
private Element getFooter(NoteQueryParameters queryInstance, User user,
        ResourceBundleManager resourcesManager) throws MalformedURLException,
        BadElementException {
    Table table = new Table(2);
    table.setWidths(new float[] { 60, 40 });
    table.setWidth(100);
    table.setPadding(5);
    table.setBorder(Table.TOP);
    Cell serviceCell = new Cell();
    serviceCell.setBorder(Cell.TOP);
    serviceCell.add(RtfElementFactory.createChunk(
            resourcesManager.getText("export.post.footer.service", user.getLanguageLocale())
            + " ", null));
    serviceCell.add(RtfElementFactory.createChunk(resourcesManager.getText(
            "export.post.footer.service.provider", user.getLanguageLocale())));
    Cell pageNumberCell = new Cell();
    pageNumberCell.setHorizontalAlignment(Cell.ALIGN_RIGHT);
    pageNumberCell.setBorder(Cell.TOP);
    pageNumberCell.add(RtfElementFactory.createChunk(resourcesManager.getText(
            "export.post.footer.page", user.getLanguageLocale()) + " "));
    pageNumberCell.add(new RtfPageNumber());
    pageNumberCell
    .add(RtfElementFactory.createChunk(" "
            + resourcesManager.getText("export.post.footer.of",
                    user.getLanguageLocale()) + " "));
    pageNumberCell.add(new RtfTotalPageNumber());

    table.addCell(serviceCell);
    table.addCell(pageNumberCell);
    return table;
}
项目:javamelody    文件:MRtfWriter.java   
/**
 * We create a writer that listens to the document and directs a RTF-stream to out
 *
 * @param table
 *           MBasicTable
 * @param document
 *           Document
 * @param out
 *           OutputStream
 * @return DocWriter
 */
@Override
protected DocWriter createWriter(final MBasicTable table, final Document document,
        final OutputStream out) {
    final RtfWriter2 writer = RtfWriter2.getInstance(document, out);

    // title
    final String title = buildTitle(table);
    if (title != null) {
        final HeaderFooter header = new RtfHeaderFooter(new Paragraph(title));
        header.setAlignment(Element.ALIGN_LEFT);
        header.setBorder(Rectangle.NO_BORDER);
        document.setHeader(header);
        document.addTitle(title);
    }

    // advanced page numbers : x/y
    final Paragraph footerParagraph = new Paragraph();
    final Font font = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.NORMAL);
    footerParagraph.add(new RtfPageNumber(font));
    footerParagraph.add(new Phrase(" / ", font));
    footerParagraph.add(new RtfTotalPageNumber(font));
    footerParagraph.setAlignment(Element.ALIGN_CENTER);
    final HeaderFooter footer = new RtfHeaderFooter(footerParagraph);
    footer.setBorder(Rectangle.TOP);
    document.setFooter(footer);

    return writer;
}