EVO HTML to Image Converter
EVO HTML to Image Converter can be used in any type of .NET application to convert HTML pages to images and to create thumbnails of HTML pages.
The HTML to Image Converter is part of the HTML to PDF Converter Library. Using this tool you can easily convert HTML pages to BMP, JPEG, PNG or GIF images.
|
EVO HTML to Image Converter
|
|
|
EVO HTML to Image Converter can be used in any type of .NET application to convert HTML pages to raster images
and to create thumbnails of the HTML pages.
The HTML to Image Converter is not a standalone product, it is part of the HTML to PDF Converter Library
and is represented by the HtmlToImageConverter class of that library. Using this class you can convert HTML pages to any type
of raster image supported by the .NET framework like BMP, JPEG, PNG or GIF. When converting to PNG you can also choose to produce
an image with transparent background.
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.
|
|
Convert HTML pages to raster images
Create thumbnails of the HTML pages
Create transparent PNG images
Convert HTML pages to images in memory or to image files in a folder
Save the HTML pages images in various image formats
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
|
|
|
|
|
|
Code Sample - Convert HTML Pages to Raster Images
|
|
The code below was taken from the HTML to Image Converter demo application available for download in
the HTML to PDF Converter product package. In this sample an instance of the HtmlToImageConverter
class is constructed and used to rasterize the HTML page to an image.
|
|
protected void convertToImageButton_Click(object sender, EventArgs e)
{
// Create a HTML to Image converter object with default settings
HtmlToImageConverter htmlToImageConverter = new HtmlToImageConverter();
// Set license key received after purchase to use the converter in licensed mode
// Leave it not set to use the converter in demo mode
htmlToImageConverter.LicenseKey = "4W9+bn19bn5ue2B+bn1/YH98YHd3d3c=";
// Set HTML Viewer width in pixels which is the equivalent in converter of the browser window width
htmlToImageConverter.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)
htmlToImageConverter.HtmlViewerHeight = int.Parse(htmlViewerHeightTextBox.Text);
// Set if the created image has a transparent background
htmlToImageConverter.TransparentBackground = SelectedImageFormat() == System.Drawing.Imaging.ImageFormat.Png ? transparentBackgroundCheckBox.Checked : false;
// 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
htmlToImageConverter.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)
htmlToImageConverter.ConversionDelay = int.Parse(conversionDelayTextBox.Text);
System.Drawing.Image[] imageTiles = null;
if (convertUrlRadioButton.Checked)
{
string url = urlTextBox.Text;
// Convert the HTML page given by an URL to a set of Image objects
imageTiles = htmlToImageConverter.ConvertUrlToImageTiles(url);
}
else
{
string htmlString = htmlStringTextBox.Text;
string baseUrl = baseUrlTextBox.Text;
// Convert a HTML string with a base URL to a set of Image objects
imageTiles = htmlToImageConverter.ConvertHtmlToImageTiles(htmlString, baseUrl);
}
// Save the first image tile to a memory buffer
System.Drawing.Image outImage = imageTiles[0];
// Create a memory stream where to save the image
System.IO.MemoryStream imageOutputStream = new System.IO.MemoryStream();
// Save the image to memory stream
outImage.Save(imageOutputStream, SelectedImageFormat());
// Write the memory stream to a memory buffer
imageOutputStream.Position = 0;
byte[] outImageBuffer = imageOutputStream.ToArray();
// Close the output memory stream
imageOutputStream.Close();
// Send the image as response to browser
string imageFormatName = imageFormatComboBox.SelectedValue.ToLower();
// Set response content type
Response.AddHeader("Content-Type", "image/" + (imageFormatName == "jpg" ? "jpeg" : imageFormatName));
// Instruct the browser to open the image file as an attachment or inline
Response.AddHeader("Content-Disposition", String.Format("attachment; filename={0}; size={1}", "HTML_to_Image." + imageFormatName, outImageBuffer.Length.ToString()));
// Write the image buffer to HTTP response
Response.BinaryWrite(outImageBuffer);
// End the HTTP response and stop the current page processing
Response.End();
}
|
|
|