EvoPdf Classic · HTML to SVG

EVO HTML to SVG Converter

EVO HTML to SVG Converter can be used in any type of .NET application to convert HTML pages to SVG vector images. SVG images are preferred over raster images because the vector images can preserve the same quality at any zoom level. The HTML to SVG Converter is part of the HTML to PDF Converter Library. Using this tool you can easily convert HTML pages to SVG images.

Classic v14.0 · Windows, .NET Framework 2.0+ and .NET 6–10 · Evaluate without registration — demo mode by default (watermarked) · Licensed with the HTML to PDF Converter license or EVO PDF Toolkit

$dotnet add package EvoPdf.HtmlToPdf

Windows · .NET Framework 2.0+ and .NET 6–10 (.NET Standard 2.0) · the EvoPdf metapackage bundles the Classic HTML to PDF library

Program.csC#
using EvoPdf;

var converter = new HtmlToSvgConverter();
byte[] svg = converter.ConvertUrl(
    "https://www.evopdf.com");
File.WriteAllBytes("page.svg", svg);
Classic API: EvoPdf namespace, one converter class, synchronous calls. API reference →
  • Windows 10 / 11 / Server 2016–2025
  • .NET Framework 2.0 – 4.8.1
  • .NET 6 → 10, .NET Standard 2.0
  • Azure Cloud Services & Virtual Machines
  • Web, console and desktop applications
Features

What the HTML to SVG component does

  • Convert HTML pages to SVG vector images
  • Convert HTML pages to SVG images in memory or to SVG image files in a folder
  • Does not depend on any third party tools
  • Support for .NET 2.0, .NET 4.0 frameworks and later
  • Documentation and C# samples for all the features
Documented, with code

Every feature explained with its C# code

The product documentation walks through each capability with the exact C# code, from the converter options to bookmarks, forms and PDF editing. The evaluation package ships the same code as runnable demo projects.

  • Getting started with the converterC# code
  • HTML content destination and scalingC# code
  • Merge multiple HTML pages into one PDFC# code
  • Merge HTML with existing PDF documentsC# code
  • Convert only part of an HTML pageC# code
  • Repeat table header and footerC# code
  • Pages with authentication or through a proxyC# code
  • BookmarksC# code
  • PDF formsC# code
  • Internal links, file links and attachmentsC# code
  • HTML to raster image and SVGC# code
  • Merge, split, stamp and fill PDF documentsC# code
In detail

EVO HTML to SVG Converter — how it works

EVO HTML to SVG Converter can be used in any type of .NET application to convert HTML pages to SVG vector images. The HTML to SVG Converter is not a standalone product, it is part of the HTML to PDF Converter Library and is represented by the HtmlToSvgConverter class of that library.

Using this class you can convert HTML pages to SVG images. SVG is the de facto standard for vector images and the trend is to use more and more vector images instead of raster images because the vector images preserve the same quality at different zoom levels. The integration with existing .NET applications is extremely easy and no installation is necessary.

The downloaded archive contains the assembly for .NET and a demo application. The full C# source code for the demo application is available in the Samples folder.

The code below was taken from the HTML to SVG Converter demo application available for download in the HTML to PDF Converter product package. In this sample an instance of the HtmlToSvgConverter class is constructed and used to convert a HTML page to an SVG vector image.

At a glance

Component
EvoPdf Classic · HTML to SVG
NuGet package
EvoPdf.HtmlToPdf
Namespace
EvoPdf
Main class
HtmlToSvgConverter
Runs on
Windows · .NET Framework 2.0+ · .NET 6–10 (.NET Standard 2.0)
Version
Classic v14.0
License
HTML to PDF Converter license or EVO PDF Toolkit; evaluation without registration
Documentation →
Sample.csC#
protected void convertToSvgButton_Click(object sender, EventArgs e)
{
    // Create a HTML to SVG converter object with default settings
    HtmlToSvgConverter htmlToSvgConverter = new HtmlToSvgConverter();

    // Set license key received after purchase to use the converter in licensed mode
    // Leave it not set to use the converter in demo mode

    // Set HTML Viewer width in pixels which is the equivalent in converter of the browser window width
    htmlToSvgConverter.HtmlViewerWidth = int.Parse(htmlViewerWidthTextBox.Text);

    // Set HTML viewer height in pixels to convert the top part of a HTML page 
    // Leave it not set to convert the entire HTML
    if (htmlViewerHeightTextBox.Text.Length > 0)
        htmlToSvgConverter.HtmlViewerHeight = int.Parse(htmlViewerHeightTextBox.Text);
            
    // Set the maximum time in seconds to wait for HTML page to be loaded 
    // Leave it not set for a default 60 seconds maximum wait time
    htmlToSvgConverter.NavigationTimeout = int.Parse(navigationTimeoutTextBox.Text);

    // Set an adddional delay in seconds to wait for JavaScript or AJAX calls after page load completed
    // Set this property to 0 if you don't need to wait for such asynchcronous operations to finish
    if (conversionDelayTextBox.Text.Length > 0)
        htmlToSvgConverter.ConversionDelay = int.Parse(conversionDelayTextBox.Text);

    // The buffer to receive the generated SVG document
    byte[] outSvgBuffer = null;

    if (convertUrlRadioButton.Checked)
    {
        string url = urlTextBox.Text;

        // Convert the HTML page given by an URL to a SVG document in a memory buffer
        outSvgBuffer = htmlToSvgConverter.ConvertUrl(url);
    }
    else
    {
        string htmlString = htmlStringTextBox.Text;
        string baseUrl = baseUrlTextBox.Text;

        // Convert a HTML string with a base URL to a SVG document in a memory buffer
        outSvgBuffer = htmlToSvgConverter.ConvertHtml(htmlString, baseUrl);
    }

    // Send the SVG as response to browser

    // Set response content type
    Response.AddHeader("Content-Type", "image/svg+xml");

    // Instruct the browser to open the SVG file as an attachment or inline
    Response.AddHeader("Content-Disposition", String.Format("attachment; filename=HTML_to_SVG.svg; size={0}", outSvgBuffer.Length.ToString()));

    // Write the SVG document buffer to HTTP response
    Response.BinaryWrite(outSvgBuffer);

    // End the HTTP response and stop the current page processing
    Response.End();
}
Licensing

Perpetual licenses, updates and support included for a year

The HTML to PDF Converter license (450 USD Deployment / 1200 USD Company) covers the Classic and the Next converter; the EVO PDF Toolkit (650 / 1400 USD) covers every component on this site, Classic tools included. The Company License includes redistribution.