Converter HTML para PDF usando Java

Como desenvolvedor Java, você pode converter facilmente arquivos HTML ou páginas da Web de URLs da Web ao vivo em documentos PDF programaticamente em seus aplicativos Java. Neste artigo, você aprenderá como converter HTML para PDF usando Java.

Os seguintes tópicos são discutidos/abordados neste artigo:

API Java de conversão de HTML para PDF

Para converter HTML para PDF, estarei usando GroupDocs.Conversion for Java API. É uma solução de conversão de arquivos rápida, eficiente e confiável para seus aplicativos Java sem instalar nenhum software externo. Você pode converter entre todos os formatos de documentos comerciais populares, como PDF, HTML, E-mail, Word, Excel, PowerPoint, Project, formatos de arquivo de imagem raster e muito mais. Também permite exibir todo o documento ou renderizá-lo parcialmente para acelerar o processo. A API é compatível com todas as versões do Java e suporta sistemas operacionais populares (Windows, Linux, macOS) capazes de executar o Java runtime.

Você pode baixar o JAR da API ou simplesmente adicionar a seguinte configuração pom.xml em seu aplicativo Java baseado em Maven para experimentar os exemplos de código mencionados abaixo.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
  <groupId>com.groupdocs</groupId>
  <artifactId>groupdocs-conversion</artifactId>
  <version>21.7</version> 
</dependency>

Converter HTML para PDF usando Java

Você pode facilmente converter arquivos HTML em documentos PDF seguindo as etapas simples abaixo:

  1. Crie uma instância da classe Converter com o caminho do arquivo de entrada
  2. Crie uma instância de PdfConvertOptions
  3. Chame o método convert() com o caminho do arquivo de saída e as opções de conversão

O exemplo de código a seguir mostra como converter um documento HTML em um documento PDF usando Java.

// inicializar conversor
Converter converterer = new Converter("C:\\Files\\sample.html");

// definir opções de conversão de PDF
PdfConvertOptions options = new PdfConvertOptions();

// converter
converterer.converter("C:\\Files\\HtmlToPdf.pdf", options);
Converter HTML para PDF usando Java

Converter HTML para PDF usando Java

A classe Converter é a classe principal que controla o processo de conversão de documentos. Ele fornece vários métodos para atender às solicitações de conversão. O método convert() dessa classe converte o documento de origem no formato de destino especificado e salva o documento convertido no caminho de arquivo fornecido. Ele fornece vários métodos convert() sobrecarregados para converter formatos de arquivo suportados.

Converta HTML para PDF com Opções Avançadas

Você pode usar algumas configurações avançadas ao converter os arquivos HTML em documentos PDF seguindo as etapas abaixo:

  1. Crie uma instância da classe Converter com o caminho do arquivo de entrada
  2. Crie uma instância de PdfConvertOptions
  3. Defina várias opções, como Rotação, Dpi, Largura, Altura, etc.
  4. Chame o método convert() com o caminho do arquivo de saída e as opções de conversão

O exemplo de código a seguir mostra como converter um arquivo HTML em um documento PDF com configurações avançadas.

// inicializar conversor
Converter converterer = new Converter("C:\\Files\\sample.html");

// definir PdfConvertOptions
PdfConvertOptions options = new PdfConvertOptions();
options.setPassword("12345");
options.setRotate(Rotation.On180);
options.setDpi(300);
options.setWidth(1024);
options.setHeight(768);

// converter
converterer.converter("C:\\Files\\ConvertWithAdvancedOptions.pdf", options);
Converta HTML para PDF com opções avançadas usando Java

Converta HTML para PDF com opções avançadas usando Java

A classe PdfConvertOptions fornece várias opções para converter arquivos de entrada especificados em documentos PDF. Eu usei as seguintes opções:

  • Largura — the setWidth() property sets the image width after conversion
  • Altura — the setHeight() property sets the desired image height after conversion
  • Dpi — the setDpi() property sets the desired page DPI after conversion
  • Senha — the setPassword() property protects the converted document with a password
  • Girar — the setRotate() property allows page rotation with the following available options: None, On90, On180, On270

Você pode encontrar mais detalhes sobre “Converter em PDF com opções avançadas” na documentação.

Conversão de HTML para PDF de um URL

Você pode converter as páginas da Web HTML dos URLs ativos para os documentos PDF seguindo as etapas abaixo:

  1. Forneça URL para um objeto de fluxo de entrada e abra o fluxo
  2. Crie uma instância da classe Converter com o objeto stream de entrada
  3. Crie uma instância de PdfConvertOptions
  4. Chame o método convert() com o caminho do arquivo de saída e as opções de conversão

O exemplo de código a seguir mostra como converter HTML de uma URL da Web em um documento PDF usando Java.

// fluxo de entrada
InputStream stream = new URL("https://onlinebooks.library.upenn.edu/readers.html").openStream();

// inicializar conversor
Converter converterer = new Converter(stream);

// definir opções de conversão de PDF
PdfConvertOptions options = new PdfConvertOptions();

// converter
converterer.converter("C:\\Files\\LoadDocumentFromUrl.pdf", options);

Converter intervalo de páginas específico de HTML para PDF

Você pode converter páginas específicas de documentos HTML de várias páginas em documentos PDF seguindo as etapas abaixo:

  1. Crie uma instância da classe Converter com o caminho do arquivo de entrada
  2. Crie uma instância de PdfConvertOptions
  3. Defina o número da página para iniciar a conversão
  4. Defina a contagem de páginas para converter o número total de páginas
  5. Chame o método convert() com o caminho do arquivo de saída e as opções de conversão

O exemplo de código a seguir mostra como converter páginas específicas de HTML em um documento PDF usando Java.

// inicializar conversor
Converter converterer = new Converter("C:\\Files\\Conversion\\sample_2.html");

// definir PdfConvertOptions
PdfConvertOptions options = new PdfConvertOptions();
options.setPageNumber(2);
options.setPagesCount(1);

// converter
converterer.converter("C:\\Files\\ConvertNConsecutivePages.pdf", options);

Converter HTML para PDF e adicionar marca d’água

Você pode converter arquivos HTML em documentos PDF com marca d’água seguindo as etapas abaixo:

  1. Crie uma instância da classe Converter
  2. Forneça o caminho do arquivo de entrada para o construtor
  3. Crie uma instância de PdfConvertOptions
  4. Crie uma instância de WatermarkOptions
  5. Defina várias opções, como Texto, Cor, Largura, Altura, RotatationAngle, etc.
  6. Chame o método convert() com o caminho do arquivo de saída e as opções de conversão

O exemplo de código a seguir mostra como converter um documento HTML em um documento PDF com marca d’água usando Java.

// inicializar conversor
Converter converterer = new Converter("C:\\Files\\sample_2.html");

// definir opções de conversão de PDF
PdfConvertOptions options = new PdfConvertOptions();

// definir opções de marca d'água
WatermarkOptions watermark = new WatermarkOptions();
watermark.setText("THIS IS A SAMPLE TEXT WATERMARK");
watermark.setColor(Color.red);
watermark.setTop(400);
watermark.setLeft(150);
watermark.getWatermarkFont().setBold(true);
watermark.setRotationAngle(30);
watermark.setWidth(1000);
watermark.setHeight(1000);
watermark.setBackground(false);
options.setWatermark(watermark);

// converter
converterer.converter("C:\\Files\\HtmlToPDFAddWatermark.pdf", options);
Converter HTML para PDF e adicionar marca d'água usando Java

Converter HTML para PDF e adicionar marca d’água usando Java

A classe WatermarkOptions fornece várias opções para adicionar marca d’água aos documentos convertidos. Ele permite adicionar marcas d’água de texto ou imagem aos documentos convertidos.

Obtenha uma licença gratuita

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

Conclusão

Neste artigo, você aprendeu como converter documentos HTML em PDF usando Java. Você também aprendeu como adicionar marcas d’água aos documentos PDF convertidos. Além disso, você aprendeu como converter HTML usando opções avançadas de conversão de PDF programaticamente. Este artigo também explicou como converter páginas da Web HTML de um URL ativo para um documento PDF usando Java. Você pode aprender mais sobre GroupDocs.Conversion Java API usando a documentação. Em caso de qualquer ambiguidade, não hesite em contactar-nos no fórum.

Veja também