←Select platform

DocxDocumentOptions Class

Summary

Provides extra options to use when saving a document using the Microsoft Word format (DOCX).

Syntax
C#
VB
Objective-C
C++
Java
[SerializableAttribute()] 
[DataContractAttribute()] 
public class DocxDocumentOptions : DocumentOptions 
<DataContractAttribute()> 
<SerializableAttribute()> 
Public Class DocxDocumentOptions  
   Inherits DocumentOptions 
@interface LTDocxDocumentOptions : LTDocumentOptions <NSCopying, NSCoding> 
public class DocxDocumentOptions extends DocumentOptions 
[DataContractAttribute()] 
[SerializableAttribute()] 
public ref class DocxDocumentOptions : public 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#
VB
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 
   Console.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 
      Console.WriteLine("Loading page {0}", pageNumber); 
      var page = new DocumentWriterSvgPage(); 
      page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, null); 
 
      // Add the page 
      Console.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:\Users\Public\Documents\LEADTOOLS Images"; 
} 
Imports Leadtools.Document.Writer 
Imports Leadtools 
Imports Leadtools.Codecs 
 
Public Sub DocxDocumentOptionsExample() 
   Dim inputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf") 
   Dim outputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Example.docx") 
 
   ' Setup a new RasterCodecs object 
   Dim codecs As New RasterCodecs() 
   codecs.Options.RasterizeDocument.Load.Resolution = 300 
 
   ' Get the number of pages in the input document 
   Dim pageCount As Integer = codecs.GetTotalPages(inputFileName) 
 
   ' Create a new instance of the LEADTOOLS Document Writer 
   Dim docWriter As New DocumentWriter() 
 
   ' Change the DOCX options to add frames to the file 
   Dim docxOptions As DocxDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Docx), DocxDocumentOptions) 
   docxOptions.PageRestriction = DocumentPageRestriction.Relaxed 
   docxOptions.TextMode = DocumentTextMode.Framed 
   docWriter.SetOptions(DocumentFormat.Docx, docxOptions) 
 
   ' Create a new DOCX document 
   Console.WriteLine("Creating new DOCX document: {0}", outputFileName) 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Docx) 
 
   ' Loop through all the pages 
   For pageNumber As Integer = 1 To pageCount 
      ' Get the page as SVG 
      Console.WriteLine("Loading page {0}", pageNumber) 
      Dim page As New DocumentWriterSvgPage() 
      page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, Nothing) 
 
      ' Add the page 
      Console.WriteLine("Adding page {0}", pageNumber) 
      docWriter.AddPage(page) 
 
      page.SvgDocument.Dispose() 
   Next 
 
   ' Finally finish writing the DOCX file on disk 
   docWriter.EndDocument() 
   codecs.Dispose() 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 

Requirements

Target Platforms

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

Leadtools.Document.Writer Assembly