Articles in this section
Category / Section

How to convert HTML to MHTML using C# and VB.NET

2 mins read

Syncfusion Essential PDF is a .NET PDF library used to create, read, and edit PDF documents. Using this library, you can convert HTML to MHTML using advanced Qt WebKit rendering engine in C# and VB.NET. Qt WebKit rendering is accurate, and the result preserves all the graphics, images, texts, fonts, and the layout of the original HTML document/webpage.

Assemblies required

  • Syncfusion.Compression.Base.dll
  • Syncfusion.Pdf.Base.dll
  • Syncfusion.HtmlConverter.Base.dll
  • QtBinaries folder

You can get all the previously mentioned assemblies by installing the WebKit installer available in the following link.

WebKit HTML converter: https://www.syncfusion.com/downloads/latest-version

Steps convert HTML to MHTML programmatically:

  1. Create a new C# console application project.

Create console application project

  1. Install the Syncfusion.HtmlToPdfConverter.QtWebKit.WinForms NuGet package as reference to your .NET framework application from NuGet.org. NuGet reference
  2. Include the following namespaces in the Program.cs file.

C#

using Syncfusion.HtmlConverter;

 

VB.NET

Imports Syncfusion.HtmlConverter

 

  1. Use the following code snippet to convert HTML to MHTML.

C#

//Initialize HTML converter with WebKit rendering engine
HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter(HtmlRenderingEngine.WebKit);
WebKitConverterSettings webKitSettings = new WebKitConverterSettings();
//Set WebKit path
webKitSettings.WebKitPath = @"/QtBinaries/";
//Assign WebKit settings to HTML converter
htmlConverter.ConverterSettings = webKitSettings;
//Convert URL to MHTML
htmlConverter.ConvertToMhtml("http://www.google.com", "sample.mhtml");

 

VB.NET

'Initialize HTML converter with WebKit rendering engine
Dim htmlConverter As New HtmlToPdfConverter(HtmlRenderingEngine.WebKit)
Dim webKitSettings As New WebKitConverterSettings()
'Set WebKit path
webKitSettings.WebKitPath = "/QtBinaries/"
'Assign WebKit settings to HTML converter
htmlConverter.ConverterSettings = webKitSettings
'Convert URL to MHTML
htmlConverter.ConvertToMhtml("http://www.google.com", "sample.mhtml")

 

You can download the work sample from HtmlToMHtmlSample.zip.

Output document screenshot

By executing the program, you will get the MHTML file as follows.

Take a moment to peruse the documentation, where you can find other options like MHTML to PDF, HTML to Raster Image, Partial webpage to Raster Image, HTML to SVG, and Partial Webpage to SVG with code examples.

Refer here to explore the rich set of Syncfusion Essential PDF features.

Note:

Starting with v16.2.0.x, if you reference Syncfusion assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to link to learn about generating and registering Syncfusion license key in your application to use the components without trail message.

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied