←Select platform

SvgDocumentOptions Class

Summary

Provides extra options to use when saving a document using the Scalable Vector Graphics (SVG) format.

Syntax
C#
VB
Java
Objective-C
C++
[SerializableAttribute()] 
[DataContractAttribute()] 
public class SvgDocumentOptions : DocumentOptions 
<DataContractAttribute()> 
<SerializableAttribute()> 
Public Class SvgDocumentOptions  
   Inherits DocumentOptions 
@interface LTSvgDocumentOptions : LTDocumentOptions <NSCopying, NSCoding> 
public class SvgDocumentOptions extends DocumentOptions 
[DataContractAttribute()] 
[SerializableAttribute()] 
public ref class SvgDocumentOptions : public DocumentOptions  

Remarks

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

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

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

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

Currently, the SvgDocumentOptions class contains no extra options.

Example

This example will create a new Scalable Vector Graphics (SVG) file using the various supported options.

C#
VB
using Leadtools.Document.Writer; 
using Leadtools; 
using Leadtools.Codecs; 
 
public void SvgDocumentOptionsExample() 
{ 
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"); 
   var outputFileNameTemplate = Path.Combine(LEAD_VARS.ImagesDir, "Example{0}.svg"); 
 
   // 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 SVG options 
   var svgOptions = docWriter.GetOptions(DocumentFormat.Svg) as SvgDocumentOptions; 
   // SVG currently does not have any extra options 
   // In the future, you can modify the options here if needed 
   docWriter.SetOptions(DocumentFormat.Svg, svgOptions); 
 
   // SVG 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 SVG document 
      Console.WriteLine("Creating new SVG document : {0}", outputFileName); 
      docWriter.BeginDocument(outputFileName, DocumentFormat.Svg); 
 
      // 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(); 
 
      // Finish writing theis SVG 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 SvgDocumentOptionsExample() 
   Dim inputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf") 
   Dim outputFileNameTemplate As String = Path.Combine(LEAD_VARS.ImagesDir, "Example{0}.svg") 
 
   ' 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 SVG options 
   Dim svgOptions As SvgDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Svg), SvgDocumentOptions) 
   ' SVG currently does not have any extra options 
   ' In the future, you can modify the options here if needed 
   docWriter.SetOptions(DocumentFormat.Svg, svgOptions) 
 
   ' SVG 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 SVG document 
      Console.WriteLine("Creating new SVG document : {0}", outputFileName) 
      docWriter.BeginDocument(outputFileName, DocumentFormat.Svg) 
 
      ' 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() 
 
      ' Finish writing theis SVG file on disk 
      docWriter.EndDocument() 
   Next 
   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.2019.3.11
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Writer Assembly