MHT é um formato de arquivo de página da Web normalmente usado para arquivar conteúdo online em uma máquina local. Você pode salvar uma página da Web em um único arquivo contendo todos os recursos vinculados, como imagens, animações em flash, CSS, etc. como um arquivo MHT. Em algumas situações, pode ser necessário converter um arquivo HTML para o formato MHT. De acordo com esses requisitos, este artigo discute como converter HTML para formato MHT programaticamente em C#.

Conversor de arquivo HTML para MHT – Instalação da API C#

Aspose.HTML for .NET API suporta trabalhar com vários populares formatos de arquivo como HTML, MHTML, EPUB, etc. Você pode acessar facilmente a API baixando seus arquivos DLL do New Releases ou com o comando de instalação NuGet abaixo:

PM> Install-Package Aspose.Html

Converter HTML para MHT ou MHTML em C#

Você pode converter um arquivo HTML em um arquivo MHT ou MHTML com as seguintes etapas:

  1. Inicialize uma instância da classe MHTMLSaveOptions.
  2. Salve o arquivo de saída após converter o arquivo HTML com o método ConvertHTML.

O trecho de código a seguir demonstra como converter um arquivo HTML em um arquivo MHT ou MHTML programaticamente em C#:

// Inicializar um documento HTML do arquivo
HTMLDocument document = new HTMLDocument("input.html");

// Inicializar o objeto MHTMLSaveOptions
MHTMLSaveOptions options = new MHTMLSaveOptions();

// Converter HTML para MHTML
Converter.ConvertHTML(document, options, "output.mht");

Converter HTML para MHT com opções avançadas em C#

Existem várias propriedades que improvisam a conversão de arquivos HTML para MHT ou MHTML. A classe MHTMLSaveOptions permite trabalhar com as restrições para lidar com páginas ou URLs, bem como com a profundidade das páginas. Você precisa seguir as etapas abaixo para converter HTML para arquivo MHT ou MHTML:

  1. Crie um objeto da classe MHTMLSaveOptions.
  2. Defina diferentes propriedades para o arquivo de saída.
  3. Converta o arquivo HTML para MHT com o método ConvertHTML.

O trecho de código a seguir mostra como converter um arquivo HTML para o formato MHT em C#:

// Prepare o código HTML com um link para outro arquivo e salve-o no arquivo como 'document.html'
string code = "<span>Hello, World!!</span> " +
            "<a href='document2.html'>click</a>";
File.WriteAllText("document.html", code);

// Prepare o código HTML e salve-o no arquivo como 'document2.html'
code = @"<span>Hello, World!!</span>";
File.WriteAllText("document2.html", code);

// Altere o valor da profundidade de vinculação do recurso para 1 para converter o documento com recursos vinculados diretamente
MHTMLSaveOptions options = new MHTMLSaveOptions()
{
    ResourceHandlingOptions =
    {
        MaxHandlingDepth = 1
    }
};

// Converter HTML para MHTML
Converter.ConvertHTML("document.html", options, "output.mht");

Explore a API Aspose.HTML para .NET

Você pode visitar a seção documentação para explorar outros recursos oferecidos pela API.

Obtenha Licença Gratuita

Você pode avaliar a API sem limitações de avaliação solicitando uma licença temporária gratuita.

Conclusão

Neste artigo, você entendeu como converter um arquivo HTML para MHT ou MHTML programaticamente em C#. Em caso de dúvidas, escreva para nós no fórum.

Veja também

Converter MHT ou MHTML para arquivo DOCX do Word em C#