Gerar PDF a partir de HTML em C#

Ao navegar em vários sites, você pode baixar o conteúdo HTML de uma página da web como um arquivo PDF para uso posterior. Nesse caso, você precisa de um conversor tudo-em-um para converter corretamente seu conteúdo de HTML para PDF. Como desenvolvedor C#, podemos facilmente converter conteúdo HTML de arquivos HTML para documentos PDF. Também podemos gerar um documento PDF a partir de uma string HTML ou salvar uma página da Web como PDF a partir de uma URL ativa. Neste artigo, aprenderemos como gerar um PDF a partir de HTML em C#.

Os seguintes tópicos serão abordados neste artigo:

  1. API C# para gerar PDF a partir de HTML
  2. Gerar documento PDF a partir de HTML
  3. Converter HTML em PDF com opções de salvamento
  4. Gerar PDF a partir de uma string HTML
  5. Gerar PDF a partir do URL ativo

API C# para gerar PDF a partir de HTML

Para gerar um documento PDF a partir de um arquivo HTML, usaremos a API Aspose.HTML for .NET. É uma API avançada de processamento de HTML que permite criar, modificar e extrair dados de documentos HTML. Também permite converter e renderizar documentos HTML sem nenhum software externo.

A classe HTMLDocument da API representa um documento HTML ou a página da Web que vemos no navegador. A classe PdfSaveOptions permite especificar várias opções de salvamento ao salvar como PDF. Temos a classe Converter que fornece uma ampla gama de conversões para os formatos populares, como PDF, XPS, formatos de imagem, etc. Ela fornece os métodos ConvertHTML() para converter HTML para outros formatos.

Por favor, faça o download da DLL da API ou instale-a usando NuGet.

PM> Install-Package Aspose.Html

Gerar documento PDF a partir de HTML em C#

Podemos gerar facilmente um documento PDF a partir de um arquivo HTML seguindo as etapas abaixo:

  1. Primeiramente, carregue um documento HTML usando a classe HTMLDocument.
  2. Em seguida, crie uma instância da classe PdfSaveOptions.
  3. Finalmente, chame o método Converter.ConvertHTML() para gerar um PDF. Leva HTMLDocument, PdfSaveOptions e caminho do arquivo PDF de saída como argumentos.

O exemplo de código a seguir mostra como gerar um documento PDF de um arquivo HTML usando C#.

// Este exemplo de código demonstra como gerar um documento PDF a partir de um arquivo HTML.
// Insira o caminho do arquivo HTML
string documentPath = @"C:\Files\sample.html";

// Caminho do arquivo PDF de saída 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// Carregar arquivo HTML de entrada
var document = new HTMLDocument(documentPath);

// Inicialize PdfSaveOptions 
var options = new PdfSaveOptions();

// Converter HTML para PDF
Converter.ConvertHTML(document, options, savePath);
Gerar-PDF-Documento-de-HTML-em-CSharp

Gerar documento PDF a partir de HTML em C#

Converter HTML para PDF com opções de salvamento em C#

Podemos gerar um documento PDF a partir de um arquivo HTML com opções adicionais de salvamento seguindo as etapas abaixo:

  1. Primeiramente, carregue um documento HTML usando a classe HTMLDocument.
  2. Em seguida, crie uma instância da classe PdfSaveOptions.
  3. Depois disso, especifique as opções de salvamento, como HorizontalResolution, VerticalResolution, etc.
  4. Finalmente, chame o método Converter.ConvertHTML() para gerar um PDF.

O exemplo de código a seguir mostra como gerar um PDF de um arquivo HTML com opções adicionais em C#.

// Este exemplo de código demonstra como gerar um documento PDF a partir de um arquivo HTML com Opções de Salvar.
// Insira o caminho do arquivo HTML
string documentPath = @"C:\Files\sample.html";

// Caminho do arquivo PDF de saída 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// Carregar arquivo HTML de entrada
var document = new HTMLDocument(documentPath);

// Inicialize PdfSaveOptions. 
// Configure o tamanho da página, margens, resoluções e altere a cor de fundo para AliceBlue 
var options = new PdfSaveOptions()
{
    HorizontalResolution = 200,
    VerticalResolution = 200,
    JpegQuality = 100,
    BackgroundColor = Color.AliceBlue
};

options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(600, 300), new Margin(20, 10, 10, 10));

// Converter HTML para PDF
Converter.ConvertHTML(document, options, savePath);

Gerar PDF a partir de String HTML em C#

Também podemos gerar um documento PDF a partir de uma string HTML seguindo as etapas abaixo:

  1. Primeiramente, crie uma instância da classe PdfSaveOptions.
  2. Opcionalmente, defina as opções de salvamento.
  3. Finalmente, chame o método Converter.ConvertHTML() para gerar um PDF. Leva string HTML, PdfSaveOptions e caminho do arquivo PDF de saída como argumentos.

O exemplo de código a seguir mostra como gerar um PDF de uma string HTML usando C#.

// Este exemplo de código demonstra como gerar um documento PDF a partir de uma string HTML.
string htmlString = @"<h1>Convert HTML to PDF!</h1><br/><h2>This is Sample Heading!</h2><p>This is first paragraph.</p>";

// Inicialize PdfSaveOptions 
var options = new PdfSaveOptions();

// Invoque o método ConvertHTML para converter o código HTML em PDF           
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");
Gerar-PDF-de-HTML-String-in-CSharp

Gerar PDF a partir de String HTML em C#

Gerar PDF a partir do Live URL em C#

Na seção anterior, vimos como gerar um PDF a partir de uma string HTML. Também podemos salvar uma página da Web de um URL em um documento PDF seguindo as etapas abaixo:

  1. Primeiramente, crie uma instância da classe Url com a URL de uma página da web.
  2. Em seguida, crie uma instância da classe PdfSaveOptions.
  3. Opcionalmente, defina as opções de salvamento.
  4. Por fim, salve o HTML como PDF usando o método Converter.ConvertHTML(). Ele usa o URL, PdfSaveOptions e o caminho do arquivo PDF de saída como argumentos.

O exemplo de código a seguir mostra como gerar um PDF a partir do Live URL usando C#.

// URL
Url url = new Url("https://docs.aspose.com/diagram/net/");

// Inicialize PdfSaveOptions 
var options = new PdfSaveOptions();

// Converter o código HTML para PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFromURL.pdf");

Obtenha Licença Gratuita

Você pode obter uma licença temporária gratuita para experimentar o Aspose.HTML para .NET sem limitações de avaliação.

Conclusão

Neste artigo, aprendemos como:

  • carregar um arquivo HTML programaticamente;
  • definir opções de salvamento de PDF;
  • salvar string HTML como PDF;
  • salvar uma página da Web como um documento PDF;
  • converter arquivo HTML para PDF em C#.

Além de gerar PDF a partir de HTML em C#, você pode aprender mais sobre Aspose.HTML para .NET API usando documentação. Em caso de qualquer ambiguidade, sinta-se à vontade para entrar em contato conosco em nosso fórum de suporte gratuito.

Veja também