←Select platform

DocxDocumentOptions Class

Summary
Provides extra options to use when saving a document using the Microsoft Word format (DOCX).
Syntax
C#
Objective-C
C++/CLI
Java
Python
[SerializableAttribute()] 
[DataContractAttribute()] 
public class DocxDocumentOptions : DocumentOptions 
@interface LTDocxDocumentOptions : LTDocumentOptions<NSCopying, NSCoding> 
public class DocxDocumentOptions extends DocumentOptions 
[DataContractAttribute()] 
[SerializableAttribute()] 
public ref class DocxDocumentOptions : public DocumentOptions  
class DocxDocumentOptions(DocumentOptions): 
Remarks

The DOCX format is part of Microsoft Open XML specification and first introduced with Microsoft Office 2007.

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

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

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

The DocxDocumentOptions class contains the following properties:

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

This format requires .NET framework 3.0 or later and Microsoft Open XML Format SDK 2.*. For more information, refer to Files to be Included with Your Application.

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

Example

This example will create a new Microsoft Word Document (DOCX) file using some of the supported options.

C#
using Leadtools.Document.Writer; 
using Leadtools; 
using Leadtools.Codecs; 
 
 
public void DocxDocumentOptionsExample() 
{ 
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"); 
   var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Example.docx"); 
 
   // 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 DOCX options to add frames to the file 
   var docxOptions = docWriter.GetOptions(DocumentFormat.Docx) as DocxDocumentOptions; 
   docxOptions.PageRestriction = DocumentPageRestriction.Relaxed; 
   docxOptions.TextMode = DocumentTextMode.Framed; 
   docWriter.SetOptions(DocumentFormat.Docx, docxOptions); 
 
   // Create a new DOCX document 
   Debug.WriteLine("Creating new DOCX document: {0}", outputFileName); 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Docx); 
 
   // 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 DOCX file on disk 
   docWriter.EndDocument(); 
   codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.3.31
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 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.