←Select platform

TextDocumentOptions Class

Summary
Provides extra options to use when saving a document to a text file using the LEADTOOLS DocumentWriter.
Syntax
C#
Objective-C
C++/CLI
Java
Python
[SerializableAttribute()] 
[DataContractAttribute()] 
public class TextDocumentOptions : DocumentOptions 
@interface LTTextDocumentOptions : LTDocumentOptions<NSCopying, NSCoding> 
public class TextDocumentOptions extends DocumentOptions 
[DataContractAttribute()] 
[SerializableAttribute()] 
public ref class TextDocumentOptions : public DocumentOptions  
class TextDocumentOptions(DocumentOptions): 
Remarks

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

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

  1. Use the DocumentWriter.GetOptions method of the DocumentWriter object being used. Passing DocumentFormat.Text to the format parameter. Note that the resulting object from the base DocumentOptions class needs to be cast to TextDocumentOptions.
  2. Use the various TextDocumentOptions 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.Text for the format parameter) to create a new document and add the pages.

The TextDocumentOptions class contains the following properties:

Property Description
DocumentType The type of the Text document (ANSI, UTF8 or UNICODE).
Formatted To control whether the output file will be just a flow of text or try to maintain almost the same shape of original page (i.e. margins and lines between paragraphs using spaces).
AddPageBreak Add an optional marker between pages in the resulting text file.
AddPageNumber Print the page numbers in the resulting text file.

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

Example

This example will create a new text file using the various supported options.

C#
Java
using Leadtools.Document.Writer; 
using Leadtools; 
using Leadtools.Codecs; 
 
 
public void TextDocumentOptionsExample() 
{ 
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"); 
   var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Example.txt"); 
 
   // 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 Text options 
   var textOptions = docWriter.GetOptions(DocumentFormat.Text) as TextDocumentOptions; 
   textOptions.DocumentType = TextDocumentType.Ansi; 
   textOptions.AddPageNumber = true; 
   textOptions.AddPageBreak = true; 
   textOptions.Formatted = true; 
   docWriter.SetOptions(DocumentFormat.Text, textOptions); 
 
   // Create a new Text document 
   Debug.WriteLine("Creating new Text document: {0}", outputFileName); 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Text); 
 
   // 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 Text 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.*; 
import leadtools.codecs.*; 
import leadtools.document.writer.*; 
 
 
public void textDocumentOptionsExample() { 
   Platform.loadLibrary(LTLibrary.DOCUMENT_WRITER); 
   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.txt"); 
 
   // 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 text options 
   TextDocumentOptions textOptions = (TextDocumentOptions) docWriter.getOptions(DocumentFormat.TEXT); 
   textOptions.setDocumentType(TextDocumentType.ANSI); 
   textOptions.setAddPageNumber(true); 
   textOptions.setAddPageBreak(true); 
   textOptions.setFormatted(true); 
   docWriter.setOptions(DocumentFormat.TEXT, textOptions); 
 
   // Create a new text document 
   System.out.printf("Creating new Text document: %s%n", outputFileName); 
   docWriter.beginDocument(outputFileName, DocumentFormat.TEXT); 
 
   // Loop through all the pages 
   for (int pageNumber = 1; pageNumber <= pageCount; pageNumber++) { 
      // Get the page as SVG 
      System.out.printf("Loading page %s%n", pageNumber); 
      DocumentWriterSvgPage page = new DocumentWriterSvgPage(); 
      page.setSvgDocument(codecs.loadSvg(inputFileName, pageNumber, null)); 
 
      // Add the page 
      System.out.printf("Adding page %s%n", pageNumber); 
      docWriter.addPage(page); 
 
      page.getSvgDocument().dispose(); 
   } 
 
   // Finally finish writing the Text file on disk 
   docWriter.endDocument(); 
   codecs.dispose(); 
 
   assertTrue(new File(outputFileName).exists()); 
   System.out.printf("Document created and saved to %s", outputFileName); 
} 
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.