Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.6.22
|
Leadtools.Forms.DocumentWriters Namespace : EmfDocumentOptions Class |
[DataContractAttribute()] [SerializableAttribute()] public class EmfDocumentOptions : DocumentOptions
'Declaration
<DataContractAttribute()> <SerializableAttribute()> Public Class EmfDocumentOptions Inherits DocumentOptions
'Usage
Dim instance As EmfDocumentOptions
public sealed class EmfDocumentOptions : DocumentOptions
public class EmfDocumentOptions extends DocumentOptions
function Leadtools.Forms.DocumentWriters.EmfDocumentOptions()
[DataContractAttribute()] [SerializableAttribute()] public ref class EmfDocumentOptions : public DocumentOptions
The Windows Enhanced Meta File (EMF) format does not support multi-page documents. Therefore, only the last page added with the DocumentWriter.AddPage will be used in the final document.
Note that this format does not support calling DocumentWriter.InsertPage.
The options set in the EmfDocumentOptions class will be used when the user saves a document using the DocumentFormat.Emf format.
To change the options used with the EMF format, perform the following steps:
Note that this format does not support calling DocumentWriter.InsertPage.
Currently, the EmfDocumentOptions class contains no extra options.
This example will create a new Windows Enhanced Meta File (EMF) file using the various supported options.
Imports Leadtools.Forms.DocumentWriters Imports Leadtools Imports Leadtools.Codecs Public Sub EmfDocumentOptionsExample() Dim inputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf") Dim outputFileNameTemplate As String = Path.Combine(LEAD_VARS.ImagesDir, "Example{0}.emf") ' 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 EMF options Dim emfOptions As EmfDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Emf), EmfDocumentOptions) ' EMF currently does not have any extra options ' In the future, you can modify the options here if needed docWriter.SetOptions(DocumentFormat.Emf, emfOptions) ' EMF does not support multiple pages, so we will create the document inside the loop ' Loop through all the pages For pageNumber As Integer = 1 To pageCount Dim outputFileName As String = String.Format(outputFileNameTemplate, pageNumber) ' Create a new EMF document Console.WriteLine("Creating new EMF document : {0}", outputFileName) docWriter.BeginDocument(outputFileName, DocumentFormat.Emf) ' Get the page as SVG Console.WriteLine("Loading page {0}", pageNumber) Dim page As New DocumentSvgPage() page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, Nothing) ' Add the page Console.WriteLine("Adding page {0}", pageNumber) docWriter.AddPage(page) page.SvgDocument.Dispose() ' Finish writing theis EMF file on disk docWriter.EndDocument() Next codecs.Dispose() End Sub
using Leadtools.Forms.DocumentWriters; using Leadtools; using Leadtools.Codecs; public void EmfDocumentOptionsExample() { var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"); var outputFileNameTemplate = Path.Combine(LEAD_VARS.ImagesDir, "Example{0}.emf"); // 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 EMF options var emfOptions = docWriter.GetOptions(DocumentFormat.Emf) as EmfDocumentOptions; // EMF currently does not have any extra options // In the future, you can modify the options here if needed docWriter.SetOptions(DocumentFormat.Emf, emfOptions); // EMF does not support multiple pages, so we will create the document inside the loop // Loop through all the pages for (var pageNumber = 1; pageNumber <= pageCount; pageNumber++) { var outputFileName = string.Format(outputFileNameTemplate, pageNumber); // Create a new EMF document Console.WriteLine("Creating new EMF document : {0}", outputFileName); docWriter.BeginDocument(outputFileName, DocumentFormat.Emf); // Get the page as SVG Console.WriteLine("Loading page {0}", pageNumber); var page = new DocumentSvgPage(); page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, null); // Add the page Console.WriteLine("Adding page {0}", pageNumber); docWriter.AddPage(page); page.SvgDocument.Dispose(); // Finish writing theis EMF file on disk docWriter.EndDocument(); } codecs.Dispose(); }