/** * 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. * * @param documentSource The Reader to read the RTF fragment from. * @param mappings The RtfImportMappings that contain font and color mappings to apply to the fragment. * @throws IOException On errors reading the RTF fragment. * @throws DocumentException On errors adding to this RTF fragment. */ public void ImportRtfFragment(TextReader documentSource, RtfImportMappings mappings) { if (!this.open) { throw new DocumentException("The document must be open to import RTF fragments."); } RtfParser rtfImport = new RtfParser(); rtfImport.ImportRtfFragment(documentSource, this.rtfDoc, mappings); }
/** * 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. * * @param documentSource The Stream to read the RTF fragment from. * @param mappings The RtfImportMappings that contain font and color mappings to apply to the fragment. * @param eventListeners 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 com.lowagie.text.rtf.parser.RtfImportMappings * @see com.lowagie.text.rtf.parser.RtfParser * @see com.lowagie.text.rtf.parser.RtfParser#importRtfFragment(Reader, RtfDocument, com.lowagie.text.rtf.parser.RtfImportMappings) * @since 2.0.8 * @author Howard Shank */ public void ImportRtfFragment(Stream documentSource, RtfImportMappings mappings, IEventListener[] events) { 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); }
/** * 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. * * @param documentSource The Stream to read the RTF fragment from. * @param mappings The RtfImportMappings that contain font and color mappings to apply to the fragment. * @param eventListeners 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 com.lowagie.text.rtf.parser.RtfImportMappings * @see com.lowagie.text.rtf.parser.RtfParser * @see com.lowagie.text.rtf.parser.RtfParser#importRtfFragment(Reader, RtfDocument, com.lowagie.text.rtf.parser.RtfImportMappings) * @since 2.0.8 * @author Howard Shank */ public void ImportRtfFragment(Stream documentSource, RtfImportMappings mappings, IEventListener[] events) { if (!this.open) { throw new DocumentException(MessageLocalization.GetComposedMessage("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); }