Winnovative HTML to PDF Converter for .NET

The Winnovative HTML to PDF Converter library for .NET can be integrated
in any .NET application including ASP.NET and MVC web sites, Windows Forms and WPF applications, Azure Cloud Services,
to convert URLs, HTML strings and streams to a PDF document, to a raster image or to a SVG vector image.

You can use the HTML to PDF Converter for .NET as a general purpose tool for converting
web pages and HTML code to PDF and images or you can use it as part of our .NET
Reporting Toolkit to easily create PDF reports directly from ASP.NET pages and to
benefit from the great power of ASP.NET controls.

The HTML to PDF Converter is not using a printer driver and no special settings
are necessary on the server in order to get it working. The same assembly works
both in 32-bit and 64-bit environments and xcopy deployment on the server is supported.
The library is compatible with .NET 2.0, .NET 4.0 and later frameworks.

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.

The software package you can download from website contains demo applications for ASP.NET, MVC, Windows Forms
and Azure Cloud Services with full source code both in C# and VB.NET.

The licensing model is simple and you can purchase a license online. A purchased license never expires, is royalties free and it includes
free technical support and software update for 1 year from purchase date.

Code Sample

protectedvoid 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 ="fvDh8eDx4fHg4P/h8eLg/+Dj/+jo6Og=";// 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 HTMLif(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 finishif(conversionDelayTextBox.Text.Length >0)
htmlToPdfConverter.ConversionDelay =int.Parse(conversionDelayTextBox.Text);// The buffer to receive the generated PDF documentbyte[] 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();}