Leadtools.Forms.DocumentWriters Requires Document/Medical product license | Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
XpsDocumentOptions Class
See Also  Members   Example 
Leadtools.Forms.DocumentWriters Namespace : XpsDocumentOptions Class



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

Syntax

Visual Basic (Declaration) 
Public Class XpsDocumentOptions 
   Inherits DocumentOptions
Visual Basic (Usage)Copy Code
Dim instance As XpsDocumentOptions
C# 
public class XpsDocumentOptions : DocumentOptions 
C++/CLI 
public ref class XpsDocumentOptions : public DocumentOptions 

Example

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

Visual BasicCopy Code
' Windows API functions needed to load/delete an EMF
<DllImport("gdi32.dll")> _
Private Shared Function GetEnhMetaFile(ByVal lpszMetaFile As String) As IntPtr
End Function
<DllImport("gdi32.dll")> _
Private Shared Function DeleteEnhMetaFile(ByVal hemf As IntPtr) As Boolean
End Function

Private Sub XpsDocumentOptionsExample()
   ' Unlock the support needed for LEADTOOLS Document Writers (with PDF output)
   RasterSupport.Unlock(RasterSupportType.DocumentWriters, "Replace with your own key here")

   ' Create a new instance of the LEADTOOLS Document Writer
   Dim docWriter As New DocumentWriter()

   Dim outputFileName As String = LeadtoolsExamples.Common.ImagesPath.Path + "Test.xps"
   Dim emfFileName As String = LeadtoolsExamples.Common.ImagesPath.Path + "Ocr1.emf"

   ' Change the XPS options to add page restrictions and empty pages
   Dim xpsOptions As XpsDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Xps), XpsDocumentOptions)

   docWriter.SetOptions(DocumentFormat.Xps, xpsOptions)

   ' Create a new XPS document
   Console.WriteLine("Creating new XPS document: {0}", outputFileName)
   docWriter.BeginDocument(outputFileName, DocumentFormat.Xps)

   ' Use the Windows API to load the EMF
   Dim emfHandle As IntPtr = GetEnhMetaFile(emfFileName)

   ' Add the page
   Dim page As DocumentPage = DocumentPage.Empty
   page.EmfHandle = emfHandle
   page.Image = Nothing

   Console.WriteLine("Adding EMF page from: {0}", emfFileName)
   docWriter.AddPage(page)

   ' Use the Windows API to delete the EMF
   DeleteEnhMetaFile(emfHandle)

   ' Finally finish writing the XPS file on disk
   docWriter.EndDocument()
End Sub
C#Copy Code
// Windows API functions needed to load/delete an EMF 
[DllImport("gdi32.dll")] 
private static extern IntPtr GetEnhMetaFile(string lpszMetaFile); 
[DllImport("gdi32.dll")] 
private static extern bool DeleteEnhMetaFile(IntPtr hemf); 
private void XpsDocumentOptionsExample() 

   // Unlock the support needed for LEADTOOLS Document Writers (with PDF output) 
   RasterSupport.Unlock(RasterSupportType.DocumentWriters, "Replace with your own key here"); 
 
   // Create a new instance of the LEADTOOLS Document Writer 
   DocumentWriter docWriter = new DocumentWriter(); 
 
   string outputFileName = LeadtoolsExamples.Common.ImagesPath.Path + "Test.xps"; 
   string emfFileName = LeadtoolsExamples.Common.ImagesPath.Path + "Ocr1.emf"; 
 
   // Change the XPS options to add page restrictions and empty pages 
   XpsDocumentOptions xpsOptions = docWriter.GetOptions(DocumentFormat.Xps) as XpsDocumentOptions; 
 
   // Use default resolution 
   docWriter.SetOptions(DocumentFormat.Xps, xpsOptions); 
 
   // Create a new XPS document 
   Console.WriteLine("Creating new XPS document: {0}", outputFileName); 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Xps); 
 
   // Use the Windows API to load the EMF 
   IntPtr emfHandle = GetEnhMetaFile(emfFileName); 
 
   // Add the page 
   DocumentPage page = DocumentPage.Empty; 
   page.EmfHandle = emfHandle; 
   page.Image = null; 
 
   Console.WriteLine("Adding EMF page from: {0}", emfFileName); 
   docWriter.AddPage(page); 
 
   // Use the Windows API to delete the EMF 
   DeleteEnhMetaFile(emfHandle); 
 
   // Finally finish writing the XPS file on disk 
   docWriter.EndDocument(); 
}

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.

Inheritance Hierarchy

System.Object
   Leadtools.Forms.DocumentWriters.DocumentOptions
      Leadtools.Forms.DocumentWriters.XpsDocumentOptions

Requirements

Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family

See Also

Leadtools.Forms.DocumentWriters requires a Document or Medical toolkit license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features