←Select platform

RtfDocumentOptions Class

Summary
Provides extra options to use when saving a document using the Rich Text Format (RTF).
Syntax
C#
Objective-C
C++/CLI
Java
Python
[SerializableAttribute()] 
[DataContractAttribute()] 
public class RtfDocumentOptions : DocumentOptions 
@interface LTRtfDocumentOptions : LTDocumentOptions<NSCopying, NSCoding> 
public class RtfDocumentOptions extends DocumentOptions 
[DataContractAttribute()] 
[SerializableAttribute()] 
public ref class RtfDocumentOptions : public DocumentOptions  
class RtfDocumentOptions(DocumentOptions): 
Remarks

The options set in the RtfDocumentOptions class will be used when the user saves a document using the DocumentFormat.Rtf format.

To change the options used with the RTF format, perform the following steps:

  1. Use the DocumentWriter.GetOptions method of the DocumentWriter object being used. Passing DocumentFormat.Rtf to the format parameter. Note that the resulting object from the base DocumentOptions class needs to be cast to RtfDocumentOptions.
  2. Use the various RtfDocumentOptions properties to change the options.
  3. Use DocumentWriter.SetOptions to set the new options in the engine.
  4. Now you can call the DocumentWriter.BeginDocument method (with DocumentFormat.Rtf for the format parameter) to create a new document and add the pages.

The RtfDocumentOptions class contains the following properties:

Property Description
TextMode Controls how and when to frames the text blocks in the resulting RTF file.

Note that this format does not support calling DocumentWriter.InsertPage.

Example

This example will create a new HyperText Markup Language document (RTF) file using the various supported options.

C#
Java
using Leadtools.Document.Writer; 
using Leadtools; 
using Leadtools.Codecs; 
 
 
public void RtfDocumentOptionsExample() 
{ 
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"); 
   var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Example.rtf"); 
 
   // Setup a new RasterCodecs object 
   var codecs = new RasterCodecs(); 
   codecs.Options.RasterizeDocument.Load.Resolution = 300; 
 
   // Get the number of pages in the input document 
   var pageCount = codecs.GetTotalPages(inputFileName); 
 
   // Create a new instance of the LEADTOOLS Document Writer 
   var docWriter = new DocumentWriter(); 
 
   // Change the RTF options 
   var rtfOptions = docWriter.GetOptions(DocumentFormat.Rtf) as RtfDocumentOptions; 
   rtfOptions.TextMode = DocumentTextMode.Auto; 
   docWriter.SetOptions(DocumentFormat.Rtf, rtfOptions); 
 
   // Create a new Rtf document 
   Debug.WriteLine("Creating new Rtf document: {0}", outputFileName); 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Rtf); 
 
   // Loop through all the pages 
   for (var pageNumber = 1; pageNumber <= pageCount; pageNumber++) 
   { 
      // Get the page as SVG 
      Debug.WriteLine("Loading page {0}", pageNumber); 
      var page = new DocumentWriterSvgPage(); 
      page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, null); 
 
      // Add the page 
      Debug.WriteLine("Adding page {0}", pageNumber); 
      docWriter.AddPage(page); 
 
      page.SvgDocument.Dispose(); 
   } 
 
   // Finally finish writing the Rtf file on disk 
   docWriter.EndDocument(); 
   codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
import java.io.File; 
import java.io.IOException; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.codecs.*; 
import leadtools.document.writer.*; 
 
 
public void rtfDocumentOptionsExample() { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
   String inputFileName = combine(LEAD_VARS_IMAGES_DIR, "Leadtools.pdf"); 
   String outputFileName = combine(LEAD_VARS_IMAGES_DIR, "Example.rtf"); 
 
   // Setup a new RasterCodecs object 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.getOptions().getRasterizeDocument().getLoad().setResolution(300); 
 
   // Get the number of pages in the input document 
   int pageCount = codecs.getTotalPages(inputFileName); 
 
   // Create a new instance of the LEADTOOLS Document Writer 
   DocumentWriter docWriter = new DocumentWriter(); 
 
   // Change the RTF options 
   RtfDocumentOptions rtfOptions = (RtfDocumentOptions) docWriter.getOptions(DocumentFormat.RTF); 
   rtfOptions.setTextMode(DocumentTextMode.AUTO); 
   docWriter.setOptions(DocumentFormat.RTF, rtfOptions); 
 
   assertTrue(rtfOptions.getTextMode() == DocumentTextMode.AUTO); 
 
   // Create a new Rtf document 
   System.out.printf("Creating new Rtf document: %s", outputFileName); 
   System.out.println(" "); 
   docWriter.beginDocument(outputFileName, DocumentFormat.RTF); 
 
   // Loop through all the pages 
   for (int pageNumber = 1; pageNumber <= pageCount; pageNumber++) { 
      // Get the page as SVG 
      System.out.printf("Loading page %s", pageNumber); 
      System.out.println(" "); 
      DocumentWriterSvgPage page = new DocumentWriterSvgPage(); 
      page.setSvgDocument(codecs.loadSvg(inputFileName, pageNumber, null)); 
 
      // Add the page 
      System.out.printf("Adding page %s", pageNumber); 
      System.out.println(" "); 
      docWriter.addPage(page); 
 
      page.getSvgDocument().dispose(); 
   } 
 
   // Finally finish writing the Rtf file on disk 
   docWriter.endDocument(); 
   codecs.dispose(); 
   System.out.println("Command run, pages added"); 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Writer Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.