←Select platform

XpsDocumentOptions Class

Summary

Provides extra options to use when saving a document using the Microsoft Open XML Paper Specification format (XPS).

Syntax
C#
VB
C++
Java
[SerializableAttribute()] 
[DataContractAttribute()] 
public class XpsDocumentOptions : DocumentOptions 
<DataContractAttribute()> 
<SerializableAttribute()> 
Public Class XpsDocumentOptions  
   Inherits DocumentOptions 
public class XpsDocumentOptions extends DocumentOptions 
[DataContractAttribute()] 
[SerializableAttribute()] 
public ref class XpsDocumentOptions : public DocumentOptions  

Remarks

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

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

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

Currently, the XpsDocumentOptions class contains no extra options.

This format requires .NET framework 3.0 or later.

Example

This example will create a new Windows Enhanced Meta File (EMF) file using the various supported options.

C#
VB
using Leadtools.Document.Writer; 
using Leadtools; 
using Leadtools.Codecs; 
 
public void XpsDocumentOptionsExample() 
{ 
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"); 
   var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Example.xps"); 
 
   // 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 XPS options 
   var xpsOptions = docWriter.GetOptions(DocumentFormat.Xps) as XpsDocumentOptions; 
   // XPS currently does not have any extra options 
   // In the future, you can modify the options here if needed 
   docWriter.SetOptions(DocumentFormat.Xps, xpsOptions); 
 
   // Create a new XPS document 
   Console.WriteLine("Creating new XPS document: {0}", outputFileName); 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Xps); 
 
   // 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 XPS 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 XpsDocumentOptionsExample() 
   Dim inputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf") 
   Dim outputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Example.xps") 
 
   ' 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 XPS options 
   Dim xpsOptions As XpsDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Xps), XpsDocumentOptions) 
   ' XPS currently does not have any extra options 
   ' In the future, you can modify the options here if needed 
   docWriter.SetOptions(DocumentFormat.Xps, xpsOptions) 
 
   ' Create a new XPS document 
   Console.WriteLine("Creating new XPS document: {0}", outputFileName) 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Xps) 
 
   ' 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 XPS 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