Example usage for com.lowagie.text.rtf.parser RtfParser importRtfFragment

List of usage examples for com.lowagie.text.rtf.parser RtfParser importRtfFragment

Introduction

In this page you can find the example usage for com.lowagie.text.rtf.parser RtfParser importRtfFragment.

Prototype

public void importRtfFragment(InputStream readerIn, RtfDocument rtfDoc, RtfImportMappings importMappings)
        throws IOException 

Source Link

Document

Imports an RTF fragment.

Usage

From source file:org.pentaho.reporting.engine.classic.core.modules.output.table.rtf.itext.PatchRtfWriter2.java

License:Open Source License

/**
 * Adds a fragment of an RTF document to the current RTF document being generated. Since this fragment doesn't contain
 * font or color tables, all fonts and colors are mapped to the default font and color. If the font and color mappings
 * are known, they can be specified via the mappings parameter. Uses new RtfParser object.
 * <p/>/*from  w  ww .ja  va2s. c  o m*/
 * (author: Howard Shank)
 *
 * @param documentSource
 *          The InputStream to read the RTF fragment from.
 * @param mappings
 *          The RtfImportMappings that contain font and color mappings to apply to the fragment.
 * @param events
 *          The array of event listeners. May be null
 * @throws IOException
 *           On errors reading the RTF fragment.
 * @throws DocumentException
 *           On errors adding to this RTF fragment.
 * @see RtfImportMappings
 * @see RtfParser
 * @see RtfParser#importRtfFragment(InputStream, com.lowagie.text.rtf.document.RtfDocument, RtfImportMappings)
 * @since 2.0.8
 */
public void importRtfFragment(InputStream documentSource, RtfImportMappings mappings, EventListener[] events)
        throws IOException, DocumentException {
    if (!this.open) {
        throw new DocumentException("The document must be open to import RTF fragments.");
    }
    RtfParser rtfImport = new RtfParser(this.document);
    if (events != null) {
        for (int idx = 0; idx < events.length; idx++) {
            rtfImport.addListener(events[idx]);
        }
    }
    rtfImport.importRtfFragment(documentSource, this.rtfDoc, mappings);
}