Search in sources :

Example 1 with RtfFont

use of com.lowagie.text.rtf.style.RtfFont in project itext2 by albfernandez.

the class RtfField method setFont.

/**
 * Override setFont to perform the correct font handling.
 */
public void setFont(Font font) {
    super.setFont(font);
    this.font = new RtfFont(this.document, font);
}
Also used : RtfFont(com.lowagie.text.rtf.style.RtfFont)

Example 2 with RtfFont

use of com.lowagie.text.rtf.style.RtfFont in project itext2 by albfernandez.

the class RtfTest method main.

/**
 * Creates 1 RTF file.
 */
@Test
public void main() throws Exception {
    Document doc = new Document();
    RtfWriter2 writer2 = RtfWriter2.getInstance(doc, PdfTestBase.getOutputStream("testNew.rtf"));
    writer2.setAutogenerateTOCEntries(true);
    Table headerTable = new Table(3);
    headerTable.addCell("Test Cell 1");
    headerTable.addCell("Test Cell 2");
    headerTable.addCell("Test Cell 3");
    HeaderFooter header = new RtfHeaderFooter(headerTable);
    RtfHeaderFooterGroup footer = new RtfHeaderFooterGroup();
    footer.setHeaderFooter(new RtfHeaderFooter(new Phrase("This is the footer on the title page")), com.lowagie.text.rtf.headerfooter.RtfHeaderFooter.DISPLAY_FIRST_PAGE);
    footer.setHeaderFooter(new RtfHeaderFooter(new Phrase("This is a left side page")), com.lowagie.text.rtf.headerfooter.RtfHeaderFooter.DISPLAY_LEFT_PAGES);
    footer.setHeaderFooter(new RtfHeaderFooter(new Phrase("This is a right side page")), com.lowagie.text.rtf.headerfooter.RtfHeaderFooter.DISPLAY_RIGHT_PAGES);
    doc.setHeader(header);
    doc.setFooter(footer);
    doc.open();
    Paragraph p = new Paragraph();
    p.add(new RtfTableOfContents("UPDATE ME!"));
    doc.add(p);
    p = new Paragraph("", new RtfFont("Staccato222 BT"));
    p.add(new Chunk("Hello! "));
    p.add(new Chunk("How do you do?"));
    doc.add(p);
    p.setAlignment(Element.ALIGN_RIGHT);
    doc.add(p);
    Anchor a = new Anchor("http://www.uni-klu.ac.at");
    a.setReference("http://www.uni-klu.ac.at");
    doc.add(a);
    Image img = Image.getInstance(PdfTestBase.RESOURCES_DIR + "pngnow.png");
    doc.add(new Chunk(img, 0, 0));
    doc.add(new Annotation("Mark", "This works!"));
    Chunk c = new Chunk("");
    c.setNewPage();
    doc.add(c);
    List subList = new List(true, 40);
    subList.add(new ListItem("Sub list 1"));
    subList.add(new ListItem("Sub list 2"));
    List list = new List(true, 20);
    list.add(new ListItem("Test line 1"));
    list.add(new ListItem("Test line 2 - This is a really long test line to test that linebreaks are working the way they are supposed to work so a really really long line of drivel is required"));
    list.add(subList);
    list.add(new ListItem("Test line 3 - \t\u20ac\t 60,-"));
    doc.add(list);
    list = new List(false, 20);
    list.add(new ListItem("Bullet"));
    list.add(new ListItem("Another one"));
    doc.add(list);
    doc.newPage();
    Chapter chapter = new Chapter(new Paragraph("This is a Chapter"), 1);
    chapter.add(new Paragraph("This is some text that belongs to this chapter."));
    chapter.add(new Paragraph("A second paragraph. What a surprise."));
    Section section = chapter.addSection(new Paragraph("This is a subsection"));
    section.add(new Paragraph("Text in the subsection."));
    doc.add(chapter);
    com.lowagie.text.rtf.field.RtfTOCEntry rtfTOC = new com.lowagie.text.rtf.field.RtfTOCEntry("Table Test");
    doc.add(rtfTOC);
    Table table = new Table(3);
    table.setPadding(2);
    table.setAlignment(Element.ALIGN_LEFT);
    table.setSpacing(2);
    Cell emptyCell = new Cell("");
    Cell cellLeft = new Cell("Left Alignment");
    cellLeft.setHorizontalAlignment(Element.ALIGN_LEFT);
    Cell cellCenter = new Cell("Center Alignment");
    cellCenter.setHorizontalAlignment(Element.ALIGN_CENTER);
    Cell cellRight = new Cell("Right Alignment");
    cellRight.setHorizontalAlignment(Element.ALIGN_RIGHT);
    table.addCell(cellLeft);
    table.addCell(cellCenter);
    table.addCell(cellRight);
    Cell cellSpanHoriz = new Cell("This Cell spans two columns");
    cellSpanHoriz.setColspan(2);
    table.addCell(cellSpanHoriz);
    table.addCell(emptyCell);
    Cell cellSpanVert = new Cell("This Cell spans two rows");
    cellSpanVert.setRowspan(2);
    table.addCell(emptyCell);
    table.addCell(cellSpanVert);
    table.addCell(emptyCell);
    table.addCell(emptyCell);
    table.addCell(emptyCell);
    Cell cellSpanHorizVert = new Cell("This Cell spans both two columns and two rows");
    cellSpanHorizVert.setColspan(2);
    cellSpanHorizVert.setRowspan(2);
    table.addCell(emptyCell);
    table.addCell(cellSpanHorizVert);
    table.addCell(emptyCell);
    RtfCell cellDotted = new RtfCell("Dotted border");
    cellDotted.setBorders(new RtfBorderGroup(Rectangle.BOX, RtfBorder.BORDER_DOTTED, 1, new Color(0, 0, 0)));
    RtfCell cellEmbossed = new RtfCell("Embossed border");
    cellEmbossed.setBorders(new RtfBorderGroup(Rectangle.BOX, RtfBorder.BORDER_EMBOSS, 1, new Color(0, 0, 0)));
    RtfCell cellNoBorder = new RtfCell("No border");
    cellNoBorder.setBorders(new RtfBorderGroup());
    table.addCell(cellDotted);
    table.addCell(cellEmbossed);
    table.addCell(cellNoBorder);
    doc.add(table);
    for (int i = 0; i < 300; i++) {
        doc.add(new Paragraph("Dummy line to get multi-page document. Line " + (i + 1)));
    }
    doc.close();
}
Also used : RtfFont(com.lowagie.text.rtf.style.RtfFont) HeaderFooter(com.lowagie.text.HeaderFooter) RtfHeaderFooter(com.lowagie.text.rtf.headerfooter.RtfHeaderFooter) Document(com.lowagie.text.Document) Image(com.lowagie.text.Image) RtfHeaderFooterGroup(com.lowagie.text.rtf.headerfooter.RtfHeaderFooterGroup) List(com.lowagie.text.List) RtfCell(com.lowagie.text.rtf.table.RtfCell) Cell(com.lowagie.text.Cell) Table(com.lowagie.text.Table) RtfBorderGroup(com.lowagie.text.rtf.table.RtfBorderGroup) Color(java.awt.Color) Chapter(com.lowagie.text.Chapter) RtfCell(com.lowagie.text.rtf.table.RtfCell) Phrase(com.lowagie.text.Phrase) Chunk(com.lowagie.text.Chunk) Section(com.lowagie.text.Section) Annotation(com.lowagie.text.Annotation) Paragraph(com.lowagie.text.Paragraph) RtfHeaderFooter(com.lowagie.text.rtf.headerfooter.RtfHeaderFooter) Anchor(com.lowagie.text.Anchor) ListItem(com.lowagie.text.ListItem) RtfTableOfContents(com.lowagie.text.rtf.field.RtfTableOfContents) RtfWriter2(com.lowagie.text.rtf.RtfWriter2) Test(org.junit.Test)

Example 3 with RtfFont

use of com.lowagie.text.rtf.style.RtfFont in project itext2 by albfernandez.

the class ExtendedFontStylesTest method main.

/**
 * Extended font styles example.
 */
@Test
public void main() throws Exception {
    Document document = new Document();
    RtfWriter2.getInstance(document, PdfTestBase.getOutputStream("ExtendedFontStyles.rtf"));
    document.open();
    // Use the RtfFont.STYLE_* instead of the Font styles.
    RtfFont doubleStrikethrough = new RtfFont("Arial", RtfFont.UNDEFINED, RtfFont.STYLE_DOUBLE_STRIKETHROUGH);
    RtfFont shadow = new RtfFont("Arial", RtfFont.UNDEFINED, RtfFont.STYLE_SHADOW);
    // Or combine them with Font styles.
    RtfFont engravedItalic = new RtfFont("Arial", RtfFont.UNDEFINED, RtfFont.STYLE_ENGRAVED | Font.ITALIC);
    // The hidden style is special since it hides text.
    RtfFont hidden = new RtfFont("Arial", RtfFont.UNDEFINED, RtfFont.STYLE_HIDDEN);
    Paragraph paragraph = new Paragraph("This text is ", new RtfFont("Arial", 12));
    // Use the RtfFonts when creating the text.
    paragraph.add(new Chunk("deleted,", doubleStrikethrough));
    paragraph.add(new Chunk(" shady,", shadow));
    paragraph.add(new Chunk(" engraved and italic", engravedItalic));
    paragraph.add(" and");
    paragraph.add(new Chunk(" you won't see this", hidden));
    paragraph.add(" nothing.");
    document.add(paragraph);
    document.close();
}
Also used : RtfFont(com.lowagie.text.rtf.style.RtfFont) Document(com.lowagie.text.Document) Chunk(com.lowagie.text.Chunk) Paragraph(com.lowagie.text.Paragraph) Test(org.junit.Test)

Example 4 with RtfFont

use of com.lowagie.text.rtf.style.RtfFont in project itext2 by albfernandez.

the class ExtendedFontTest method main.

/**
 * Extended font example.
 */
@Test
public void main() throws Exception {
    Document document = new Document();
    RtfWriter2.getInstance(document, PdfTestBase.getOutputStream("ExtendedFont.rtf"));
    document.open();
    // Create a RtfFont with the desired font name.
    RtfFont msComicSans = new RtfFont("Comic Sans MS");
    // Use the RtfFont like any other Font.
    document.add(new Paragraph("This paragraph uses the" + " Comic Sans MS font.", msComicSans));
    // Font size, font style and font colour can also be specified.
    RtfFont bigBoldGreenArial = new RtfFont("Arial", 36, Font.BOLD, Color.GREEN);
    document.add(new Paragraph("This is a really big bold green Arial text", bigBoldGreenArial));
    document.close();
}
Also used : RtfFont(com.lowagie.text.rtf.style.RtfFont) Document(com.lowagie.text.Document) Paragraph(com.lowagie.text.Paragraph) Test(org.junit.Test)

Example 5 with RtfFont

use of com.lowagie.text.rtf.style.RtfFont in project itext2 by albfernandez.

the class RtfImportMgr method importFont.

/**
 * Imports a font. The font name is looked up in the RtfDocumentHeader and
 * then the mapping from original font number to actual font number is added.
 *
 * @param fontNr The original font number.
 * @param fontName The font name to look up.
 */
public boolean importFont(String fontNr, String fontName) {
    RtfFont rtfFont = new RtfFont(fontName);
    rtfFont.setRtfDocument(this.rtfDoc);
    this.importFontMapping.put(fontNr, Integer.toString(this.rtfDoc.getDocumentHeader().getFontNumber(rtfFont)));
    return true;
}
Also used : RtfFont(com.lowagie.text.rtf.style.RtfFont)

Aggregations

RtfFont (com.lowagie.text.rtf.style.RtfFont)6 Document (com.lowagie.text.Document)3 Paragraph (com.lowagie.text.Paragraph)3 Test (org.junit.Test)3 Chunk (com.lowagie.text.Chunk)2 Anchor (com.lowagie.text.Anchor)1 Annotation (com.lowagie.text.Annotation)1 Cell (com.lowagie.text.Cell)1 Chapter (com.lowagie.text.Chapter)1 HeaderFooter (com.lowagie.text.HeaderFooter)1 Image (com.lowagie.text.Image)1 List (com.lowagie.text.List)1 ListItem (com.lowagie.text.ListItem)1 Phrase (com.lowagie.text.Phrase)1 Section (com.lowagie.text.Section)1 Table (com.lowagie.text.Table)1 RtfWriter2 (com.lowagie.text.rtf.RtfWriter2)1 RtfTableOfContents (com.lowagie.text.rtf.field.RtfTableOfContents)1 RtfHeaderFooter (com.lowagie.text.rtf.headerfooter.RtfHeaderFooter)1 RtfHeaderFooterGroup (com.lowagie.text.rtf.headerfooter.RtfHeaderFooterGroup)1