Arquivos HTML são freqüentemente usados na Internet. Em certos casos, podemos precisar converter páginas HTML em imagens. Neste artigo, aprenderemos como converter HTML em imagem em C#. Aprenderemos a renderizar a página da web HTML para JPG, PNG, BMP, GIF e outros formatos de imagem populares.

Este artigo cobre os seguintes tópicos:

API C# para converter HTML em imagem

Usaremos Aspose.HTML for .NET para converter arquivos HTML em imagens em C#. Ele permite que os desenvolvedores trabalhem com documentos HTML em seus aplicativos .NET. Ele fornece uma ampla gama de recursos e capacidades para análise, conversão, edição e renderização de documentos HTML.

Por favor baixe a DLL da API ou instale-a usando NuGet.

PM> Install-Package Aspose.Html

Convertendo HTML em Imagem - Arquivo de Entrada

Primeiramente, vamos verificar o arquivo HTML básico, contendo alguns textos e imagens, que usaremos como arquivo de entrada nestes exemplos.

<!DOCTYPE html>
<html>
<head>
<style>
body {
  text-align: center;
  color: black;
}
</style>
</head>
<body>
<h2>Welcome to HTML to Image C# Test Conversion</h2>
<p></p>
<img src="HTML to Image.png" alt="HTML to Image" style="width:300px">
</body>
</html>

Converter HTML em imagem JPG em C#

Podemos converter qualquer página HTML em uma imagem JPG seguindo as etapas abaixo:

  1. Inicialize as opções de renderização de imagem usando a classe ImageSaveOptions.
  2. Defina o tamanho da página ou a cor de fundo.
  3. Depois disso, especifique ImageFormat como JPG.
  4. Por fim, chame o método ConvertHTML() para converter HTML em JPG.

O exemplo de código a seguir mostra como converter HTML em uma imagem JPG em C#.

        // Configure o tamanho da página de 7 x 7 polegadas e altere a cor de fundo para cinza claro
        var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Jpeg)
        {
            PageSetup =
{
    AnyPage = new Aspose.Html.Drawing.Page()
    {
        Size = new Aspose.Html.Drawing.Size(Aspose.Html.Drawing.Length.FromInches(7), Aspose.Html.Drawing.Length.FromInches(7))
    }
},
            BackgroundColor = System.Drawing.Color.LightGray,
        };
        // Chame o ConvertHTML para converter 'document.html' em imagem jpeg
        Aspose.Html.Converters.Converter.ConvertHTML(dataDir + "HTMLtoImage.html", options, dataDir + "HTMLtoJPG.jpg");

Além disso, vamos dar uma olhada na imagem JPG de saída gerada:

Imagem HTML para JPG C#

Além disso, você pode observar a cor de fundo e o tamanho da imagem nas propriedades. As resoluções são de 300 dpi, portanto a largura e o comprimento da imagem são 2100 porque ela tem 7 polegadas de comprimento e largura.

Converter HTML em imagem PNG em C#

Arquivos de imagem PNG são arquivos mais avançados que imagens JPG. Por exemplo, eles podem ter fundos transparentes, ao contrário das imagens JPG. Portanto, às vezes é melhor converter HTML em uma imagem PNG porque é um formato de arquivo popular e compatível.

podemos converter HTML em PNG seguindo as etapas mencionadas anteriormente. No entanto, só precisamos especificar ImageFormat.Png na etapa 3.

O trecho de código a seguir mostra como converter um arquivo HTML em uma imagem PNG em C#:

// Inicialize um documento HTML a partir do arquivo html
using (var document = new Aspose.Html.HTMLDocument(dataDir + "document.html"))
{
// Inicializar ImageSaveOptions 
var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Png);

// Converter HTML em PNG
Aspose.Html.Converters.Converter.ConvertHTML(document, options, dataDir + "output.png");
}

Conversor de imagem C# HTML para BMP

Da mesma forma, podemos converter HTML em BMP seguindo as etapas mencionadas anteriormente. No entanto, só precisamos especificar ImageFormat.Bmp na etapa 3.

O exemplo de código a seguir mostra como converter HTML em imagem BMP em C#:

// Inicialize um documento HTML a partir do arquivo html
using (var document = new Aspose.Html.HTMLDocument(dataDir + "document.html"))
{
    // Inicializar ImageSaveOptions 
    var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Bmp);

    // Converter HTML em BMP
    Aspose.Html.Converters.Converter.ConvertHTML(document, options, dataDir + "output.bmp");
}

Converter HTML em imagem GIF em C#

Também podemos converter HTML em GIF seguindo as etapas mencionadas anteriormente. No entanto, só precisamos especificar ImageFormat.Gif na etapa 3.

O código abaixo mostra como converter imagens HTML em GIF em C#.

// Inicialize um documento HTML a partir do arquivo html
using (var document = new Aspose.Html.HTMLDocument(dataDir + "document.html"))
{
    // Inicializar ImageSaveOptions 
    var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Gif);

    // Converter HTML em GIF
    Aspose.Html.Converters.Converter.ConvertHTML(document, options, dataDir + "output.gif");
}

Obtenha uma licença gratuita

Obtenha uma licença temporária gratuita para experimentar a biblioteca sem limitações de avaliação.

HTML para imagem - Recursos de aprendizagem

Além de converter páginas HTML em imagens, explore vários outros recursos da biblioteca usando os recursos abaixo:

Conclusão

Resumindo, aprendemos como converter HTML em JPG, PNG, BMP e GIF em C# em aplicativos .NET. A conversão de HTML para esses formatos de imagem é um dos recursos mais importantes do Aspose.HTML for .NET API. Além disso, os resultados de conversão ou renderização apresentam a mais alta fidelidade e eficiência. É por isso que a API é a mais adequada para converter, editar ou manipular arquivos HTML. Além disso, estamos ansiosos para ouvir de você. Sinta-se à vontade para nos contatar através do Fórum de Suporte Gratuito em caso de qualquer assistência.

Veja também

Informações: O conversor Aspose Text to GIF permite criar animações divertidas apenas digitando.