Loads a page from an image, document or vector file as SVG
public ISvgDocument LoadSvg(string fileName,int pageNumber,CodecsLoadSvgOptions options)
Public Overloads Function LoadSvg( _ByVal fileName As String, _ByVal pageNumber As Integer, _ByVal options As Leadtools.Codecs.CodecsLoadSvgOptions _) As Leadtools.ISvgDocument
public Leadtools.ISvgDocument LoadSvg(string fileName,int pageNumber,Leadtools.Codecs.CodecsLoadSvgOptions options)
- (nullable id<ISvgDocument>)loadSvgFile:(NSString *)filepage:(NSInteger)pageNumberoptions:(nullable LTCodecsLoadSvgOptions *)optionserror:(NSError **)error
function Leadtools.Codecs.RasterCodecs.LoadSvg(String,Int32,CodecsLoadSvgOptions)(fileName ,pageNumber ,options)
public:Leadtools.ISvgDocument^ LoadSvg(String^ fileName,int pageNumber,Leadtools.Codecs.CodecsLoadSvgOptions^ options)
fileName
The input file name.
pageNumber
1-based page number to load.
options
The options used for loading SVG. This can be null.
SVG document representation of the page.
Use this method to load a page from any supported image, document or vector file as SVG (Scalable Vector Graphics). The following conditions must be met to load a page from a file as SVG:
| Condition | Description |
|---|---|
| The file format is SVG |
SVG can be loaded as SVG |
| The file format is document |
Any of the document file formats supported by LEADTOOLS such DOCX/DOC, PPTX/PPT, XLSX/XLS, RTF, TXT, AFP, ICA, etc. These formats will set the CodecsDocumentImageInfo.IsDocumentFile property to true when calling GetInformation |
| The file format is vector |
Any of the vector file formats supported by LEADTOOLS such as DXF, DWG, etc. These formats will set the CodecsVectorImageInfo.IsVectorFile property to true when calling GetInformation |
| The file format is PDF |
And the PDF file contains more than pure raster data (for example, not scanned PDF file). |
To find out if an input file can be loaded as SVG, use the CanLoadSvg method.
In addition to the usual format filter assembly (Leadtools.Codecs.*), The following additional assemblies may be required to support loading as SVG
| Assembly | Description |
|---|---|
| Leadtools.Svg |
SVG support. Always required |
| Leadtools.Vector |
Required if the input document is a vector file |
| Leadtools.Pdf |
Required if the input document is a PDF file |
Usually, the returned ISvgDocument is to be casted to Leadtools.Svg.SvgDocument to continue working with the other SVG features, such as retrieving its data, rendering it to a target or saving it to a separate file.
You must check the result SVG document flatness and perform the necessary operation before continuing.
To determine whether a file or stream can be loaded as SVG, use CanLoadSvg(string fileName) or CanLoadSvg(Stream stream).
To load as SVG from a stream, use LoadSvg(Stream stream, int pageNumber, CodecsLoadSvgOptions options).
To load as SVG asynchronously, use LoadSvgAsync.
For more information, refer to Working With SVG.
This example will check a folder of document and images files for SVG support then loads the first page of each supported file and saves the result SVG.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing;using Leadtools.ImageProcessing.Color;using Leadtools.Svg;using LeadtoolsExamples.Common;public static void LoadSvgExample(){// input directorystring inDir = ImagesPath.Path;// output directorystring outDir = Path.Combine(ImagesPath.Path, "svgpages");if (!Directory.Exists(outDir))Directory.CreateDirectory(outDir);using (var codecs = new RasterCodecs()){// Set 300 as the default value for loading document filescodecs.Options.RasterizeDocument.Load.Resolution = 300;codecs.ThrowExceptionsOnInvalidImages = false;// Get all the files from input directoryforeach (var srcFileName in Directory.EnumerateFiles(inDir)){Console.WriteLine("Checking {0}", srcFileName);using (var info = codecs.GetInformation(srcFileName, false)){// We can load as SVG if its document or vector (skipping SVG files themselves)if (info.Format != RasterImageFormat.Unknown && // valid formatinfo.Format != RasterImageFormat.Svg && // not svg(info.Document.IsDocumentFile || // a documentinfo.Vector.IsVectorFile)) // or vector{// try to load the first page as SVGtry{using (SvgDocument svgDocument = codecs.LoadSvg(srcFileName, 1, null) as SvgDocument){// Save it to diskstring name = Path.GetFileName(srcFileName).Replace(".", "-");name = Path.ChangeExtension(name, "svg");string dstFileName = Path.Combine(outDir, name);Console.WriteLine("Saving to {0}", dstFileName);svgDocument.SaveToFile(dstFileName, null);}}catch (Exception ex){Console.WriteLine(ex.Message);}}}}}}
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.ImageProcessingImports Leadtools.ImageProcessing.ColorImports Leadtools.DrawingImports Leadtools.SvgPublic Shared Sub LoadSvgExample()' input directoryDim inDir As String = LEAD_VARS.ImagesDir' output directoryDim outDir As String = Path.Combine(LEAD_VARS.ImagesDir, "svgpages")If Not Directory.Exists(outDir) ThenDirectory.CreateDirectory(outDir)End IfUsing codecs As New RasterCodecs()' Set 300 as the default value for loading document filescodecs.Options.RasterizeDocument.Load.Resolution = 300codecs.ThrowExceptionsOnInvalidImages = False' Get all the files from input directoryFor Each srcFileName As String In Directory.EnumerateFiles(inDir)Console.WriteLine("Checking {0}", srcFileName)Using info As CodecsImageInfo = codecs.GetInformation(srcFileName, False)' We can load as SVG if its document or vector (skipping SVG files themselves)If info.Format <> RasterImageFormat.Unknown AndAlsoinfo.Format <> RasterImageFormat.Svg AndAlso(info.Document.IsDocumentFile OrElseinfo.Vector.IsVectorFile) Then' try to load the first page as SVGTryUsing svgDocument As SvgDocument = DirectCast(codecs.LoadSvg(srcFileName, 1, Nothing), SvgDocument)' Save it to diskDim name As String = Path.GetFileName(srcFileName).Replace(".", "-")name = Path.ChangeExtension(name, "svg")Dim dstFileName As String = Path.Combine(outDir, name)Console.WriteLine("Saving to {0}", dstFileName)svgDocument.SaveToFile(dstFileName, Nothing)End UsingCatch ex As ExceptionConsole.WriteLine(ex.Message)End TryEnd IfEnd UsingNextEnd UsingEnd SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
