switch(element.type()) {
case LwgElement.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 LwgElement.PHRASE:
rtfElements.add(new RtfPhrase(rtfDoc, (LwgPhrase) element));
break;
case LwgElement.PARAGRAPH:
rtfElements.add(new RtfParagraph(rtfDoc, (Paragraph) element));
break;
case LwgElement.ANCHOR:
rtfElements.add(new RtfAnchor(rtfDoc, (Anchor) element));
break;
case LwgElement.ANNOTATION:
rtfElements.add(new RtfAnnotation(rtfDoc, (Annotation) element));
break;
case LwgElement.IMGRAW:
case LwgElement.IMGTEMPLATE:
case LwgElement.JPEG:
rtfElements.add(new RtfImage(rtfDoc, (LwgImage) element));
break;
case LwgElement.AUTHOR:
case LwgElement.SUBJECT:
case LwgElement.KEYWORDS:
case LwgElement.TITLE: