Table of Contents

Class HtmlToSvgConverter

Namespace
EvoPdf
Assembly
evohtmltopdf.dll

This class offers the necessary methods to create a SVG document from a web page at given URL or from a HTML string. The generated SVG document can be saved into a memory buffer or into a file

[ClassInterface(ClassInterfaceType.AutoDual)]
public class HtmlToSvgConverter
Inheritance
HtmlToSvgConverter
Derived
Inherited Members

Constructors

HtmlToSvgConverter()

Creates a HTML to SVG converter using the default width and height for the HTML viewer

public HtmlToSvgConverter()

Properties

AuthenticationOptions

This property can be set with an username and a password in order to authenticate to the web server before accessing the URL to be converted in HTML to SVG converter. They can be used for example to resolve the IIS Integrated Windows Authentication or other types of IIS authentication.

public AuthenticationOptions AuthenticationOptions { get; }

Property Value

AuthenticationOptions

ClipHtmlView

If the HTML content is not entirely visible in the HTML viewer of the HTML to SVG converter at the specified width, the ClipHtmlView property will control whether the HTML content is clipped or the HTML viewer width is automatically extended to make visible the whole HTML content. The HTML viewer width is given by the HtmlViewerWidth property. The default value of this property is false.

public bool ClipHtmlView { get; set; }

Property Value

bool

ConversionDelay

An additional time in seconds to wait for asynchronous items to be completely loaded or for a web page redirect to finish before starting the rendering of the document to SVG. Default value is 2.

public int ConversionDelay { get; set; }

Property Value

int

DefaultHtmlEncoding

The default HTML document text encoding to be used if there is no charset meta tag defined in the HTML document. By default this property is not set and an auto determined text encoding will be used by converter

public string DefaultHtmlEncoding { get; set; }

Property Value

string

DownloadAllResources

Gets or sets a flag indicating if the HTML to SVG converter should try to download all the resources even if this could cause a slower conversion. The default value is false.

public bool DownloadAllResources { get; set; }

Property Value

bool

Enable3DTransformations

Gets or sets a flag indicating if the accelerated CSS 3D transformations are enabled in the HTML to SVG converter. The default value is false

public bool Enable3DTransformations { get; set; }

Property Value

bool

EnableAccelerated2DCanvas

Gets or sets a flag indicating if the accelerated 2D canvas is enabled in the HTML to SVG converter. The default value is false

public bool EnableAccelerated2DCanvas { get; set; }

Property Value

bool

EnableHttp2

Gets or sets a flag indicating if the HTTP2 protocol is enabled in HTML to SVG converter. The property has effect only in NE version of the library. The default value is false

public bool EnableHttp2 { get; set; }

Property Value

bool

EnablePersistentStorage

Gets or sets a flag indicating if the persistent local storage is enabled in the HTML to SVG converter. The default value is false

public bool EnablePersistentStorage { get; set; }

Property Value

bool

EnableWebGL

Gets or sets a flag indicating if the WebGL is enabled in the HTML to SVG converter. The default value is false

public bool EnableWebGL { get; set; }

Property Value

bool

EvoInternalFileName

Sets the full path of evointernal.dat helper file of the HTML to SVG converter. By default this file is expected to be found in the same folder with evohtmltopdf.dll assembly.

public string EvoInternalFileName { set; }

Property Value

string

ExtensionsEnabled

Gets or sets a flag indicating if the HTML viewer extensions are executed in HTML to SVG converter. The default value is false and no extension is executed. The Flash player for Mozilla Firefox must be installed in order to execute the flash content from HTML

public bool ExtensionsEnabled { get; set; }

Property Value

bool

HtmlViewerHeight

Gets or sets the HTML viewer height in pixels in HTML to SVG converter. If the specified HTML viewer height is 0 the HTML viewer height will be automatically determined based on the HTML content and the HTML viewer width in order to make visible the whole HTML content. The HTML viewer width is given by the HtmlViewerWidth property. If the HTML content is not entirely visible in the HTML viewer at the specified width, the ClipHtmlView property will control whether the HTML content is clipped or the HTML viewer width is automatically extended to make visible the whole HTML content. The HTML viewer height can also be specified in the HtmlToSvgConverter class contructor. The default value is 0 to automatically determine the HTML viewer height based on the HTML content and the HTML viewer width.

public int HtmlViewerHeight { get; set; }

Property Value

int

HtmlViewerWidth

Gets or sets the preferred HTML viewer width in pixels of the HTML to SVG converter. If the HTML content is not entirely visible in the HTML viewer at the specified width, the ClipHtmlView property will control whether the HTML content is clipped or the HTML viewer width is automatically extended to make visible the whole HTML content. By default the ClipHtmlView property is false and the HTML viewer is automatically extended in width to make visible the whole HTML content. The HTML viewer width can also be specified in the HtmlToSvgConverter class constructor. The default value is 1024 pixels.

public int HtmlViewerWidth { get; set; }

Property Value

int

HtmlViewerZoom

Gets or sets the HTML viewer zoom percentage in HTML to SVG Converter similar to zoom level in a browser. The default value of this property is 100

public int HtmlViewerZoom { get; set; }

Property Value

int

HttpPostFields

Returns the collection of HTTP POST fields to be used when accessing a web page in HTML to SVG converter. If there are elements in collection then the converter will make a POST request to the web page URL with the fields from this collection, otherwise it will make a GET request

public NameValueCollection HttpPostFields { get; }

Property Value

NameValueCollection

HttpRequestCookies

Gets a collection of custom HTTP cookies to be sent by the HTML to SVG converter to the web server when the web page to convert and the resources (image, css, etc) referenced by the web page are requested. A cookie is defined by a name and a value pair that can be added to the collection using the Add(string, string) method of the HttpRequestCookies property.

public NameValueCollection HttpRequestCookies { get; }

Property Value

NameValueCollection

HttpRequestHeaders

Gets a collection of custom HTTP headers to be sent by the HTML to SVG converter to the web server when the web page is requested from a URL. A custom HTTP header is defined by a name and a value pair that can be added to the collection using the Add(string, string) method of the HttpRequestHeaders property. The PersistentHttpRequestHeaders property can be set on true to instruct the converter to send the custom headers each time an external resource (image, css, etc) referenced by the web page is requested. By default the PersistentHttpRequestHeaders property is false and the custom headers are not automatically sent to the web server when the web page resources are requested. The custom HTTP headers can be used to define cookies, authentication options, URL referrer or any other HTTP header to be sent to the web browser. The preferred method to send cookies is to use the HttpRequestCookies property.

public NameValueCollection HttpRequestHeaders { get; }

Property Value

NameValueCollection

ImpersonationOptions

The impersonation options applied during navigation in the HTML to SVG converter.

public ImpersonationOptions ImpersonationOptions { get; }

Property Value

ImpersonationOptions

InitialHtmlViewerHeight

Gets or sets the initial height in pixels of the HTML viewer in HTML to SVG converter. This value of this property is ignored if the HtmlViewerHeight property is set

public int InitialHtmlViewerHeight { get; set; }

Property Value

int

InterruptSlowJavaScript

Gets or sets a flag indicating if the slow JavaScript script should be interrupted in the HTML to SVG converter. The default value is false and the scripts are not interrupted

public bool InterruptSlowJavaScript { get; set; }

Property Value

bool

JavaScriptEnabled

A flag indicating if JavaScript execution is enabled in HTML to SVG converter during the HTML to SVG conversion. The default is true.

public bool JavaScriptEnabled { get; set; }

Property Value

bool

LicenseKey

Gets or sets the license key string received from the vendor when converting HTML to SVG. If this property is null the converter will automatically enter in evaluation mode and a demo watermark will be displayed on the generated image.

public string LicenseKey { get; set; }

Property Value

string

LocalFilesAccessEnabled

Gets or sets a flag indicating if the access to local files is enabled in the HTML to SVG converter. The default value is true

public bool LocalFilesAccessEnabled { get; set; }

Property Value

bool

ManualTriggeringConversionDelay

An additional time in seconds to wait after manual triggering before starting the rendering in HTML to SVG converter. Default value is 2.

public int ManualTriggeringConversionDelay { get; set; }

Property Value

int

MaxHtmlViewerHeight

Gets or sets the maximum height in pixels to be rendered from the HTML document by HTML to SVG converter. The default value is 0 and the entire HTML document is rendered

public int MaxHtmlViewerHeight { get; set; }

Property Value

int

MediaType

Gets or sets the media type of the HTML document used by HTML to SVG converter. The default media type is 'screen'. If you set this property with 'print' then the CSS properties defined in '@media print' rule will be used to render the document

public string MediaType { get; set; }

Property Value

string

MinHtmlViewerHeight

Gets or sets the minimum height in pixels to be rendered from HTML document by the HTML to SVG converter. This value of this property is ignored if the HtmlViewerHeight property is set

public int MinHtmlViewerHeight { get; set; }

Property Value

int

NavigationTimeout

The HTML to SVG converter navigation timeout in seconds. Default value is 60.

public int NavigationTimeout { get; set; }

Property Value

int

NavigatorUserAgent

The custom user agent to be used when accessing the HTML page. When this property is null or empty the default user agent is used

public string NavigatorUserAgent { get; set; }

Property Value

string

OutputResolution

The resolution of the SVG document

public int OutputResolution { get; set; }

Property Value

int

OutputSize

A flag indicating if the calculated size of the SVG document should be set in the generated document

public bool OutputSize { get; set; }

Property Value

bool

PersistentHttpRequestHeaders

This property can be set on true to instruct the HTML to SVG converter to send the custom headers defined by the HttpRequestHeaders property each time an external resource (image, css, etc) referenced by the web page is requested. The default value of this property is true and the custom headers are automatically sent to the web server when the web page resources are requested.

public bool PersistentHttpRequestHeaders { get; set; }

Property Value

bool

PrerenderEnabled

Gets or sets a flag indicating if the HTML to SVG converter should perform a pre-rendering. The default value is false

public bool PrerenderEnabled { get; set; }

Property Value

bool

ProxyOptions

Gets a reference to an object encapsulating the proxy options used by HTML to SVG converter to access the HTML document to convert.

public ProxyOptions ProxyOptions { get; }

Property Value

ProxyOptions

RenderedHtmlElementSelector

Get or set the CSS selector of the HTML element to be rendered by the HTML to SVG converter. If the selector selects multiple HTML elements, only the the first one will be converted. The CSS selector is case sensitive. If this property is not set then the entire HTML document is rendered

public string RenderedHtmlElementSelector { get; set; }

Property Value

string

SvgFontsEnabled

Gets or sets a flag indicating if the SVG fonts are enabled in HTML during the HTML to SVG conversion. The default value is false

public bool SvgFontsEnabled { get; set; }

Property Value

bool

TriggeringMode

The conversion triggering mode used by HTML to SVG converter. The default value is ConversionDelay.

public TriggeringMode TriggeringMode { get; set; }

Property Value

TriggeringMode

WebFontsEnabled

Gets or sets a flag indicating if the Web Fonts are enabled in HTML during the HTML to SVG conversion. The default value is false

public bool WebFontsEnabled { get; set; }

Property Value

bool

Methods

ConvertHtml(string, string)

Converts a HTML string into a SVG document using a base URL to resolve the external resources and returns the rendered SVG document into a memory buffer

public byte[] ConvertHtml(string html, string baseUrl)

Parameters

html string

The HTML string to convert to SVG

baseUrl string

This parameter allows the converter to determine the full URLs from relative URLs for images and CSS files appearing in the HTML string. If there are not relative URLs in the HTML code this parameter can be empty or null

Returns

byte[]

A memory buffer containing the SVG document

ConvertHtmlToFile(string, string, string)

Converts the specified HTML string into a SVG document using a base URL to resolve the external resources and saves the rendered SVG document to the specified file

public void ConvertHtmlToFile(string html, string baseUrl, string outFile)

Parameters

html string

The HTML string to convert

baseUrl string

This parameter allows the converter to determine the full URLs from relative URLs for images and CSS files appearing in the HTML string. If there are not relative URLs in the HTML code this parameter can be empty or null

outFile string

The output file where to save the generated SVG document

ConvertHtmlToStream(string, string, Stream)

Converts the specified HTML string into a SVG document using a base URL to resolve the external resources and saves the rendered SVG document to the specified stream

public void ConvertHtmlToStream(string html, string baseUrl, Stream outStream)

Parameters

html string

The HTML string to convert

baseUrl string

This parameter allows the converter to determine the full URLs from relative URLs for images and CSS files appearing in the HTML string. If there are not relative URLs in the HTML code this parameter can be empty or null.

outStream Stream

The output stream where to save the generated SVG document

ConvertUrl(string)

Converts an URL to a SVG document and returns the rendered SVG document into a memory buffer

public byte[] ConvertUrl(string url)

Parameters

url string

The URL of the web page to be converted to PDF. The URL can be also the full path of a HTML file from the local file system.

Returns

byte[]

A memory buffer containing the SVG document

ConvertUrlToFile(string, string)

Converts the specified URL into a SVG document and saves the rendered SVG document to the specified file.

public void ConvertUrlToFile(string url, string outFile)

Parameters

url string

The URL of the web page to be converted to PDF. The URL can be also the full path of a HTML file from the local file system

outFile string

The output file where to save the generated SVG document

ConvertUrlToStream(string, Stream)

Converts the specified URL into a SVG document and saves the rendered SVG document to the specified stream

public void ConvertUrlToStream(string url, Stream outStream)

Parameters

url string

The URL of the web page to be converted to PDF. The URL can be also the full path of a HTML file from the local file system

outStream Stream

The output stream where to save the generated SVG document