EVO HTML to PDF Converter Library

Features list itemAdvanced Support for HTML5, CSS3, JavaScript, SVG and Web Fonts

EVO HTML to PDF Converter Box EVO HTML to PDF Converter for .NET offers full support for HTML tags, CSS styles, SVG vector graphics, Canvas, Web Fonts, JavaScript, page breaks control with CSS styles, repeating HTML table header and footer in PDF pages, live URLs and internal links in PDF, automatically generated hierarchical bookmarks and table of contents, HTML in the headers and footers. The library is much more than a HTML to PDF converter. You can also use it to easily merge, split, edit and fill existing PDF documents.

Features list itemAccurate HTML to PDF Conversion. Easy Integration and Distribution

EVO HTML to PDF Converter library for .NET is the most accurate HTML to PDF converter available in the market. It preserves in PDF the exact aspect of the HTML document while supporting advanced HTML5 content and JavaScript. You can easily integrate it into any type of .NET application and the simple and flexibile licensing model allows you to distribute it as part of your application to your own customers.

Features list itemNo External Dependencies. Simple Copy Deployment

The HTML to PDF Converter is not using a printer driver, does not require any third party tools, installation or any setup on the server. The same assembly works on all Windows platforms and simple copy deployment on the server is supported.

Features list itemPerfect for Multithreaded Environments

The library was designed and tested to work reliably in multithreaded environments and to completely release all the resources used during conversion after each conversion. This makes it suitable for usage in high traffic ASP.NET websites and services running a long period of time without interruption.

Features list itemManipulate Existing PDF Documents

Besides the powerful HTML to PDF converter feature the library can also be used to merge multiple PDF documents in a single PDF document, split a PDF document in multiple smaller PDF documents, edit an existing PDF document like adding stamps and watermarks, fill the PDF form in a PDF document.

Features list itemComprehensive Demo, Documentation and Code Samples

EVO HTML to PDF Converter comes with an impressive set of demo applications covering most of the software features. For each demo we provide the complete .NET source code in C# and VB.NET. Each feature is briefly documented inline in demo application and completely documented in product documentation.

Features list itemFree Fully Featured Evaluation Version

The evaluation version of the EVO HTML to PDF Converter you can download from our website is fully functional and unlimited in time. You can evaluate the product as long as you need to ensure it fully matches all your requirements before purchasing a license for the product.

Features list itemSimple Licensing Model. Royalty Free Redistribution.

Our licensing model model is very simple and consists in two types of licenses: Deployment License and Company License. The Company License allows royalty free redistributation which means you can distribute our library as part of your applications to your customers at no addtional cost.

DemoDemo DownloadDownload ContactSupport

HTML to PDFFull List of Features

  • Easy integration, no installation required
  • Designed and tested for multithreaded environments
  • Does not require IE WebBrowser or any third party tools
  • Compatible with .NET 2.0, .NET 4.0 and .NET 4.5 frameworks
  • Compatible with Windows Azure Cloud applications
  • Can be deployed on the server by simple xcopy deployment
  • Works both in 32-bit and 64-bit environments
  • Convert web pages, HTML strings to PDF files or in memory
  • Convert web pages, HTML strings to raster image formats
  • Convert web pages, HTML strings to SVG vector images
  • Support for HTML5 features like CSS3, SVG and Web Fonts
  • Convert HTML with SVG and Web Fonts to PDF
  • Different styles for screen and print using @media rules
  • Merge multiple web pages into the single PDF document
  • Convert only a selected part of the HTML document
  • Generate PDF/A and PDF/X compliant documents
  • Generate CMYK and Gray Scale PDF documents
  • Full support for Unicode and right to left languages
  • Set PDF page size to a standard or a custom size
  • Set PDF page orientation and PDF document margins
  • Set JPEG compression level for images in PDF document
  • Add HTML content and page numbers in header and footer
  • Add page numbering in header and footer HTML
  • Control header and footer visibility in each PDF page
  • Add header and footer to existing PDF documents
  • Auto resize header and footer to adapt to content
  • Control page breaks in PDF using standard CSS styles
  • Control page breaks in PDF using API
  • 'Keep Together' feature with page-break-inside:avoid
  • Avoid page breaks inside HTML elements using API
  • Option to avoid cutting off images between PDF pages
  • Add content in PDF pages background during conversion
  • Add content over PDF page main content during conversion
  • Repeat the HTML table header and footer in PDF pages
  • Place and resize the HTML content anywhere in a PDF page
  • Shrink or stretch the HTML content to fit the PDF page
  • Automatically resize the PDF page to fit the HTML content
  • Convert HTTP links from HTML to HTTP links in PDF
  • Convert internal links from HTML to internal links in PDF
  • Auto create a bookmarks hierarchy from heading tags
  • Select in HTML the elements to bookmark
  • Select in API the elements to bookmark
  • Auto create a table of contents from heading tags
  • Define in HTML the elements to include in table of contents
  • Auto create a live PDF form from a HTML form
  • Define in HTML the elements to become fields in PDF form
  • Get the location in PDF for a set of selected HTML elements
  • Embed true type fonts into the rendered PDF for portability
  • Append or prepend external PDF files to conversion result
  • Password protect and set permissions of the PDF document
  • Add a digital signature to generated PDF document
  • Set the PDF document properties like title, subject, etc.
  • Enable or disable JavaScript during conversion
  • HTTP authentication support (IIS Windows Authentication)
  • Use current user credentials for NTLM authentication
  • Support for access through a HTTP or SOCKS Proxy
  • Access the HTML page with GET or POST HTTP methods
  • Add HTTP headers when the HTML page is requested
  • Add cookies when the HTML page is requested
  • Execute a JavaScript when the PDF document is opened
  • Go to a page when the PDF document is opened
  • Open the print dialog when the PDF document is opened
  • Set the zoom level when the PDF document is opened
  • Support for Flash and other extensions
  • Add file links and attachments to generated PDF document
  • Add text notes to generated PDF document
  • Add watermarks and stamps to generated PDF document
  • Add graphic elements to generated PDF document
  • Add image elements to generated PDF document
  • Add text elements to generated PDF document
  • Edit existing PDF document
  • Merge multiple PDF documents in a single PDF document
  • Split a PDF document in multiple PDF documents
  • Fill PDF forms and save the filled PDF document
  • C# and VB.NET samples for ASP.NET, Windows Forms
  • Sample code for ASP.NET MVC with Razor engine
  • Sample code for a Windows Azure Cloud Service
  • Full documentation for all the product features

C# Code Sample for ASP.NET

EVO HTML to PDF Converter for .NET API allows you to convert a HTML document to PDF in just a few lines a code. The programming interface is also very rich and allows you customize the generated PDF document in various ways. The code below is copied from the Getting Started demo for HTML to PDF Converter that you can find in the Samples folder of the software Zip package.

protected void convertToPdfButton_Click(object sender, EventArgs e)
{
    // Create a HTML to PDF converter object with default settings
    HtmlToPdfConverter htmlToPdfConverter = new HtmlToPdfConverter();

    // Set license key received after purchase to use the converter in licensed mode
    // Leave it not set to use the converter in demo mode
    htmlToPdfConverter.LicenseKey = "4W9+bn19bn5ue2B+bn1/YH98YHd3d3c=";

    // Set HTML Viewer width in pixels which is the equivalent in converter of the browser window width
    htmlToPdfConverter.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)
        htmlToPdfConverter.HtmlViewerHeight = int.Parse(htmlViewerHeightTextBox.Text);

    // Set PDF page size which can be a predefined size like A4 or a custom size in points 
    // Leave it not set to have a default A4 PDF page
    htmlToPdfConverter.PdfDocumentOptions.PdfPageSize = SelectedPdfPageSize();

    // Set PDF page orientation to Portrait or Landscape
    // Leave it not set to have a default Portrait orientation for PDF page
    htmlToPdfConverter.PdfDocumentOptions.PdfPageOrientation = SelectedPdfPageOrientation();

    // 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
    htmlToPdfConverter.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)
        htmlToPdfConverter.ConversionDelay = int.Parse(conversionDelayTextBox.Text);

    // The buffer to receive the generated PDF document
    byte[] outPdfBuffer = null;

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

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

        // Convert a HTML string with a base URL to a PDF document in a memory buffer
        outPdfBuffer = htmlToPdfConverter.ConvertHtml(htmlString, baseUrl);
    }

    // Send the PDF as response to browser

    // Set response content type
    Response.AddHeader("Content-Type", "application/pdf");

    // Instruct the browser to open the PDF file as an attachment or inline
    Response.AddHeader("Content-Disposition", String.Format("{0}; filename=Getting_Started.pdf; size={1}",
        openInlineCheckBox.Checked ? "inline" : "attachment", outPdfBuffer.Length.ToString()));

    // Write the PDF document buffer to HTTP response
    Response.BinaryWrite(outPdfBuffer);

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

C# Code Sample for MVC

EVO HTML to PDF Converter for .NET can be used in any type of .NET application including ASP.NET MVC websites. The code below is copied from the Getting Started demo for MVC that you can find in the Samples\Other\Mvc folder of the software Zip package.

[HttpPost]
public ActionResult ConvertHtmlToPdf(FormCollection collection)
{
    // Create a HTML to PDF converter object with default settings
    HtmlToPdfConverter htmlToPdfConverter = new HtmlToPdfConverter();

    // Set HTML Viewer width in pixels which is the equivalent in converter of the browser window width
    htmlToPdfConverter.HtmlViewerWidth = int.Parse(collection["htmlViewerWidthTextBox"]);

    // 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 (collection["htmlViewerHeightTextBox"].Length > 0)
        htmlToPdfConverter.HtmlViewerHeight = int.Parse(collection["htmlViewerHeightTextBox"]);

    // Set PDF page size which can be a predefined size like A4 or a custom size in points 
    // Leave it not set to have a default A4 PDF page
    htmlToPdfConverter.PdfDocumentOptions.PdfPageSize = SelectedPdfPageSize(collection["pdfPageSizeDropDownList"]);

    // Set PDF page orientation to Portrait or Landscape
    // Leave it not set to have a default Portrait orientation for PDF page
    htmlToPdfConverter.PdfDocumentOptions.PdfPageOrientation = SelectedPdfPageOrientation(collection["pdfPageOrientationDropDownList"]);

    // 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
    htmlToPdfConverter.NavigationTimeout = int.Parse(collection["navigationTimeoutTextBox"]);

    // 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 (collection["conversionDelayTextBox"].Length > 0)
        htmlToPdfConverter.ConversionDelay = int.Parse(collection["conversionDelayTextBox"]);

    string url = collection["urlTextBox"];

    // Convert the HTML page given by an URL to a PDF document in a memory buffer
    byte[] outPdfBuffer = htmlToPdfConverter.ConvertUrl(url);

    // Send the PDF file to browser
    FileResult fileResult = new FileContentResult(outPdfBuffer, "application/pdf");
    fileResult.FileDownloadName = "Getting_Started.pdf";

    return fileResult;
}