Search in sources :

Example 1 with RtfParagraph

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

the class RtfCell method writeContent.

/**
 * Write the content of this RtfCell
 */
public void writeContent(final OutputStream result) throws IOException {
    if (this.content.size() == 0) {
        result.write(RtfParagraph.PARAGRAPH_DEFAULTS);
        if (this.parentRow.getParentTable().getTableFitToPage()) {
            result.write(RtfParagraphStyle.KEEP_TOGETHER_WITH_NEXT);
        }
        result.write(RtfParagraph.IN_TABLE);
    } else {
        for (int i = 0; i < this.content.size(); i++) {
            RtfBasicElement rtfElement = (RtfBasicElement) this.content.get(i);
            if (rtfElement instanceof RtfParagraph) {
                ((RtfParagraph) rtfElement).setKeepTogetherWithNext(this.parentRow.getParentTable().getTableFitToPage());
            }
            rtfElement.writeContent(result);
            if (rtfElement instanceof RtfParagraph && i < (this.content.size() - 1)) {
                result.write(RtfParagraph.PARAGRAPH);
            }
        }
    }
    result.write(DocWriter.getISOBytes("\\cell"));
}
Also used : RtfParagraph(com.lowagie.text.rtf.text.RtfParagraph) RtfBasicElement(com.lowagie.text.rtf.RtfBasicElement)

Example 2 with RtfParagraph

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

the class RtfMapper method mapElement.

/**
 * Takes an Element subclass and returns an array of RtfBasicElement
 * subclasses, that contained the mapped RTF equivalent to the Element
 * passed in.
 *
 * @param element The Element to wrap
 * @return An array of RtfBasicElement wrapping the Element
 * @throws DocumentException
 */
public RtfBasicElement[] mapElement(Element element) throws DocumentException {
    ArrayList rtfElements = new ArrayList();
    if (element instanceof RtfBasicElement) {
        RtfBasicElement rtfElement = (RtfBasicElement) element;
        rtfElement.setRtfDocument(this.rtfDoc);
        return new RtfBasicElement[] { rtfElement };
    }
    switch(element.type()) {
        case Element.CHUNK:
            Chunk chunk = (Chunk) element;
            if (chunk.hasAttributes()) {
                if (chunk.getAttributes().containsKey(Chunk.IMAGE)) {
                    rtfElements.add(new RtfImage(rtfDoc, chunk.getImage()));
                } else if (chunk.getAttributes().containsKey(Chunk.NEWPAGE)) {
                    rtfElements.add(new RtfNewPage(rtfDoc));
                } else if (chunk.getAttributes().containsKey(Chunk.TAB)) {
                    Float tabPos = (Float) ((Object[]) chunk.getAttributes().get(Chunk.TAB))[1];
                    RtfTab tab = new RtfTab(tabPos.floatValue(), RtfTab.TAB_LEFT_ALIGN);
                    tab.setRtfDocument(rtfDoc);
                    rtfElements.add(tab);
                    rtfElements.add(new RtfChunk(rtfDoc, new Chunk("\t")));
                } else {
                    rtfElements.add(new RtfChunk(rtfDoc, (Chunk) element));
                }
            } else {
                rtfElements.add(new RtfChunk(rtfDoc, (Chunk) element));
            }
            break;
        case Element.PHRASE:
            rtfElements.add(new RtfPhrase(rtfDoc, (Phrase) element));
            break;
        case Element.PARAGRAPH:
            rtfElements.add(new RtfParagraph(rtfDoc, (Paragraph) element));
            break;
        case Element.ANCHOR:
            rtfElements.add(new RtfAnchor(rtfDoc, (Anchor) element));
            break;
        case Element.ANNOTATION:
            rtfElements.add(new RtfAnnotation(rtfDoc, (Annotation) element));
            break;
        case Element.IMGRAW:
        case Element.IMGTEMPLATE:
        case Element.JPEG:
            rtfElements.add(new RtfImage(rtfDoc, (Image) element));
            break;
        case Element.AUTHOR:
        case Element.SUBJECT:
        case Element.KEYWORDS:
        case Element.TITLE:
        case Element.PRODUCER:
        case Element.CREATIONDATE:
            rtfElements.add(new RtfInfoElement(rtfDoc, (Meta) element));
            break;
        case Element.LIST:
            // TODO: Testing
            rtfElements.add(new RtfList(rtfDoc, (List) element));
            break;
        case Element.LISTITEM:
            // TODO: Testing
            rtfElements.add(new RtfListItem(rtfDoc, (ListItem) element));
            break;
        case Element.SECTION:
            rtfElements.add(new RtfSection(rtfDoc, (Section) element));
            break;
        case Element.CHAPTER:
            rtfElements.add(new RtfChapter(rtfDoc, (Chapter) element));
            break;
        case Element.TABLE:
            try {
                rtfElements.add(new RtfTable(rtfDoc, (Table) element));
            } catch (ClassCastException e) {
                rtfElements.add(new RtfTable(rtfDoc, ((SimpleTable) element).createTable()));
            }
            break;
        case Element.PTABLE:
            try {
                rtfElements.add(new RtfTable(rtfDoc, (PdfPTable) element));
            } catch (ClassCastException e) {
                rtfElements.add(new RtfTable(rtfDoc, ((SimpleTable) element).createTable()));
            }
            break;
    }
    return (RtfBasicElement[]) rtfElements.toArray(new RtfBasicElement[rtfElements.size()]);
}
Also used : Meta(com.lowagie.text.Meta) ArrayList(java.util.ArrayList) RtfImage(com.lowagie.text.rtf.graphic.RtfImage) Image(com.lowagie.text.Image) RtfImage(com.lowagie.text.rtf.graphic.RtfImage) RtfTab(com.lowagie.text.rtf.text.RtfTab) RtfAnchor(com.lowagie.text.rtf.field.RtfAnchor) PdfPTable(com.lowagie.text.pdf.PdfPTable) RtfNewPage(com.lowagie.text.rtf.text.RtfNewPage) ArrayList(java.util.ArrayList) List(com.lowagie.text.List) RtfList(com.lowagie.text.rtf.list.RtfList) RtfListItem(com.lowagie.text.rtf.list.RtfListItem) RtfTable(com.lowagie.text.rtf.table.RtfTable) PdfPTable(com.lowagie.text.pdf.PdfPTable) Table(com.lowagie.text.Table) SimpleTable(com.lowagie.text.SimpleTable) RtfTable(com.lowagie.text.rtf.table.RtfTable) RtfParagraph(com.lowagie.text.rtf.text.RtfParagraph) RtfChapter(com.lowagie.text.rtf.text.RtfChapter) Chapter(com.lowagie.text.Chapter) RtfSection(com.lowagie.text.rtf.text.RtfSection) RtfChunk(com.lowagie.text.rtf.text.RtfChunk) Phrase(com.lowagie.text.Phrase) RtfPhrase(com.lowagie.text.rtf.text.RtfPhrase) RtfAnnotation(com.lowagie.text.rtf.text.RtfAnnotation) Chunk(com.lowagie.text.Chunk) RtfChunk(com.lowagie.text.rtf.text.RtfChunk) RtfChapter(com.lowagie.text.rtf.text.RtfChapter) RtfSection(com.lowagie.text.rtf.text.RtfSection) Section(com.lowagie.text.Section) Annotation(com.lowagie.text.Annotation) RtfAnnotation(com.lowagie.text.rtf.text.RtfAnnotation) RtfParagraph(com.lowagie.text.rtf.text.RtfParagraph) Paragraph(com.lowagie.text.Paragraph) RtfList(com.lowagie.text.rtf.list.RtfList) RtfAnchor(com.lowagie.text.rtf.field.RtfAnchor) Anchor(com.lowagie.text.Anchor) RtfInfoElement(com.lowagie.text.rtf.document.RtfInfoElement) ListItem(com.lowagie.text.ListItem) RtfListItem(com.lowagie.text.rtf.list.RtfListItem) RtfPhrase(com.lowagie.text.rtf.text.RtfPhrase)

Aggregations

RtfParagraph (com.lowagie.text.rtf.text.RtfParagraph)2 Anchor (com.lowagie.text.Anchor)1 Annotation (com.lowagie.text.Annotation)1 Chapter (com.lowagie.text.Chapter)1 Chunk (com.lowagie.text.Chunk)1 Image (com.lowagie.text.Image)1 List (com.lowagie.text.List)1 ListItem (com.lowagie.text.ListItem)1 Meta (com.lowagie.text.Meta)1 Paragraph (com.lowagie.text.Paragraph)1 Phrase (com.lowagie.text.Phrase)1 Section (com.lowagie.text.Section)1 SimpleTable (com.lowagie.text.SimpleTable)1 Table (com.lowagie.text.Table)1 PdfPTable (com.lowagie.text.pdf.PdfPTable)1 RtfBasicElement (com.lowagie.text.rtf.RtfBasicElement)1 RtfInfoElement (com.lowagie.text.rtf.document.RtfInfoElement)1 RtfAnchor (com.lowagie.text.rtf.field.RtfAnchor)1 RtfImage (com.lowagie.text.rtf.graphic.RtfImage)1 RtfList (com.lowagie.text.rtf.list.RtfList)1