HTML para PDF em Java
IronPDF for Java oferece aos desenvolvedores um caminho direto do conteúdo HTML para a saída PDF sem a necessidade de aprender uma API de layout separada. A biblioteca renderiza HTML, CSS e JavaScript da mesma forma que um navegador moderno, portanto, a saída PDF corresponde ao que você vê na tela. Este tutorial cobre a instalação, os três métodos principais de conversão de HTML para PDF e as opções de formatação, incluindo cabeçalhos, rodapés, dimensionamento de página e margens personalizadas.
O tutorial usa IronPDF for Java. Um guia paralelo cobrindo a versão .NET está disponível no tutorial de conversão de HTML para PDF for .NET. IronPDF também está disponível para Python e Node.js.
Início Rápido: Converter HTML para um arquivo PDF
O caminho mais curto para um PDF a partir de uma string HTML são três linhas de código Java:
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/quickstart.java
import com.ironsoftware.ironpdf.*;
// Convert an HTML string directly to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save to disk
pdf.saveAs("output.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/quickstart.java
import com.ironsoftware.ironpdf.*;
// Convert an HTML string directly to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save to disk
pdf.saveAs("output.pdf");
!{--010011000100100101000010010100100100000101010010010110010101111101010011010101000100000101010010010101000101111101010001010010010010010010100000101001100010111110100001001001100010011110100001101001011--}
Índice
- Instalação
- Conversão de HTML para PDF
- Opções de Formatação de PDF
- Próximos Passos
Como Adicionar IronPDF a um Projeto Maven em Java?
Adicionar o IronPDF a um projeto Maven requer duas entradas no bloco de dependências do projeto. O primeiro traz a biblioteca IronPDF; a segunda adiciona um provedor de logging SLF4J para que o IronPDF possa escrever mensagens do mecanismo durante a execução.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/maven-dependency.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>2024.9.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/maven-dependency.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>2024.9.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>
O artefato ironpdf faz referência à versão mais recente do IronPDF for Java e ao changelog . A dependência slf4j-simple fornece um backend de registro básico. You can substitute it with Logback or Log4J as needed, or omit it entirely to suppress log output.
Após adicionar ambas as entradas, execute mvn install a partir da raiz do projeto para baixar os artefatos. Maven resolves the dependency against Maven Central.
com.ironsoftware:ironpdf para confirmar o número da versão mais recente antes de adicioná-la ao seu pom.xml.Como Instalar o IronPDF JAR Manualmente em Java?
Projetos que não usam Maven ou outro gerenciador de dependência podem adicionar IronPDF baixando o JAR diretamente e incluindo-o no classpath. Navegue até a página de download do IronPDF for Java e baixe o arquivo fat-JAR.
O fat-JAR agrupa todas as dependências, por isso, nenhuma entrada adicional no classpath é necessária, além do artefato principal. Optionally download an SLF4J implementation JAR to enable logging.
Adicione ambos os arquivos JAR ao classpath do projeto usando o painel de gerenciamento de bibliotecas da sua IDE ou especifique as entradas -classpath ao compilar e executar a partir do terminal.
Como Importar IronPDF para Meus Arquivos de Fonte Java?
O pacote com.ironsoftware.ironpdf contém todos os componentes de conversão e processamento. Coloque a seguinte declaração de importação no topo de cada arquivo Java que chama métodos do IronPDF.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/import-statement.java
// Import all IronPDF components
import com.ironsoftware.ironpdf.*;
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/import-statement.java
// Import all IronPDF components
import com.ironsoftware.ironpdf.*;
Uma importação direcionada que nomeia classes específicas também é válida: import com.ironsoftware.ironpdf.PdfDocument;. A importação de caráter geral é conveniente durante a exploração.
Como Definir uma Chave de Licença no IronPDF for Java?
IronPDF for Java é gratuito para uso sem uma chave de licença, mas aplica uma marca d'água em mosaico a todos os documentos PDF gerados ou modificados. Para remover a marca d'água, forneça uma chave de licença válida antes de chamar qualquer método de conversão ou manipulação.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/set-license-key.java
// Set the license key before any PDF operations
License.setLicenseKey("YOUR-LICENSE-KEY");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/set-license-key.java
// Set the license key before any PDF operations
License.setLicenseKey("YOUR-LICENSE-KEY");
Coloque a chamada setLicenseKey na inicialização do aplicativo, antes que qualquer método PdfDocument seja chamado. Compre uma chave de licença ou comece um teste gratuito para gerar PDFs sem marcas d'água.
Definindo a Localização do Arquivo de Log (Opcional)
Por padrão, o IronPDF grava as mensagens do mecanismo em um arquivo chamado IronPdfEngine.log no diretório raiz do aplicativo. Para alterar o caminho do arquivo de log, chame Settings.setLogPath antes de executar qualquer operação em PDF.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/set-log-path.java
import java.nio.file.Paths;
// Redirect log output before using IronPDF
Settings.setLogPath(Paths.get("logs/ironpdf-engine.log"));
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/set-log-path.java
import java.nio.file.Paths;
// Redirect log output before using IronPDF
Settings.setLogPath(Paths.get("logs/ironpdf-engine.log"));
setLogPath deve preceder todas as chamadas PdfDocument. Chamando após uma conversão ter iniciado não tem efeito nessa sessão.Como Converter uma String HTML para PDF em Java?
PdfDocument.renderHtmlAsPdf(String html) converte qualquer marcação HTML válida em um documento PDF. O método aceita uma string HTML bruta e retorna um objeto PdfDocument que pode ser salvo, mesclado ou modificado posteriormente.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-string-to-pdf.java
// Convert a minimal HTML string to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save the resulting document to disk
pdf.saveAs("html-string-output.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-string-to-pdf.java
// Convert a minimal HTML string to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save the resulting document to disk
pdf.saveAs("html-string-output.pdf");
O mecanismo de renderização é baseado no Chromium, portanto, qualquer HTML, CSS ou JavaScript que funcione no Chrome renderizará corretamente no PDF. Isso inclui layouts Flexbox, CSS Grid, fontes web, SVGs e gráficos impulsionados por JavaScript.
Uma versão sobrecarregada do método aceita um segundo argumento para um caminho base: renderHtmlAsPdf(String html, String basePath). Este caminho base é usado para resolver referências relativas a folhas de estilo, imagens e scripts locais.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-string-with-assets.java
// HTML referencing local stylesheet and image
String html = "<html><head><link rel='stylesheet' href='style.css'></head>"
+ "<body><img src='logo.png'/><h1>Invoice</h1></body></html>";
// Provide the folder containing style.css and logo.png as the base path
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html, "C:/invoices/");
pdf.saveAs("invoice-output.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-string-with-assets.java
// HTML referencing local stylesheet and image
String html = "<html><head><link rel='stylesheet' href='style.css'></head>"
+ "<body><img src='logo.png'/><h1>Invoice</h1></body></html>";
// Provide the folder containing style.css and logo.png as the base path
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html, "C:/invoices/");
pdf.saveAs("invoice-output.pdf");
O caminho base pode apontar para um diretório no sistema de arquivos local ou para uma URL remota. IronPDF busca ativos referenciados daquele local durante a renderização.
Para uma análise focada neste método, veja o exemplo de código de string HTML para PDF.
Como Converter uma URL para PDF em Java?
PdfDocument.renderUrlAsPdf(String url) busca a página no URL fornecido e renderiza todo o DOM (incluindo a execução de JavaScript ) antes de salvar a saída como um PDF.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/url-to-pdf.java
// Render a live web page to PDF by URL
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
// Save the rendered document
pdf.saveAs("wikipedia-pdf-article.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/url-to-pdf.java
// Render a live web page to PDF by URL
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
// Save the rendered document
pdf.saveAs("wikipedia-pdf-article.pdf");
O motor de renderização do Chromium busca folhas de estilo externas, fontes e arquivos JavaScript, de modo que o PDF resultante reflete com precisão o estado visual da página. Este método é bem adequado para geração de relatórios a partir de painéis web, arquivamento de conteúdo web público ou conversão de visualizações de dados que dependem de renderização do lado do cliente.
Veja o exemplo dedicado exemplo de conversão de URL para PDF para opções adicionais, como cabeçalhos de solicitação personalizados e autenticação.
Como Converter um Arquivo HTML para PDF em Java?
PdfDocument.renderHtmlFileAsPdf(String filePath) lê um arquivo HTML do sistema de arquivos local e o converte em PDF. O método resolve automaticamente quaisquer referências a ativos relativas no arquivo HTML contra o diretório do arquivo.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-file-to-pdf.java
// Convert a local HTML file (with a linked CSS file) to PDF
PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html");
// Save the resulting document
pdf.saveAs("invoice-from-file.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-file-to-pdf.java
// Convert a local HTML file (with a linked CSS file) to PDF
PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html");
// Save the resulting document
pdf.saveAs("invoice-from-file.pdf");
O método lida corretamente com projetos HTML de múltiplos arquivos. No exemplo acima, se TestInvoice1.html fizer referência a uma folha de estilo no mesmo diretório, o IronPDF aplicará essa folha de estilo durante a renderização. O resultado é um PDF que corresponde à aparição renderizada pelo navegador do arquivo de origem.
renderHtmlFileAsPdf de um aplicativo de servidor. Caminhos relativos são resolvidos contra o diretório de trabalho da JVM, que pode diferir da localização do arquivo HTML.Este método é particularmente útil para fluxos de trabalho de geração de PDF que mantêm modelos HTML em disco: geradores de fatura, modelos de relatório e sistemas de saída de formulários são casos de uso comuns.
Como Definir o Tamanho e Orientação da Página PDF em Java?
O tamanho e a orientação da página são controlados pela classe ChromePdfRenderOptions. Crie uma instância de ChromePdfRenderOptions, configure as propriedades e passe-a como segundo argumento para qualquer chamada de renderHtmlAsPdf.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/page-size-orientation.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;
// Create rendering options for the PDF
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set paper size to A4
options.setPaperSize(PaperSize.A4);
// Set to landscape orientation
options.setPaperOrientation(PaperOrientation.Landscape);
// Apply options to the conversion
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Landscape Report</h1>", options);
pdf.saveAs("landscape-a4-report.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/page-size-orientation.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;
// Create rendering options for the PDF
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set paper size to A4
options.setPaperSize(PaperSize.A4);
// Set to landscape orientation
options.setPaperOrientation(PaperOrientation.Landscape);
// Apply options to the conversion
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Landscape Report</h1>", options);
pdf.saveAs("landscape-a4-report.pdf");
PaperSize inclui opções padrão como A4, Letter, Legal, A3 e A5. PaperOrientation aceita Portrait (padrão) ou Landscape.
Para dimensões não padronizadas, use setCustomPaperSizeInMillimeters(double width, double height) ou setCustomPaperSizeInInches(double width, double height):
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/custom-paper-size.java
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set a custom 100mm x 150mm page size
options.setCustomPaperSizeInMillimeters(100, 150);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<p>Custom size card</p>", options);
pdf.saveAs("custom-size-card.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/custom-paper-size.java
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set a custom 100mm x 150mm page size
options.setCustomPaperSizeInMillimeters(100, 150);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<p>Custom size card</p>", options);
pdf.saveAs("custom-size-card.pdf");
Consulte o exemplo de tamanho de papel PDF personalizado para obter a lista completa de constantes PaperSize e opções de dimensionamento.
Como Definir Margens Personalizadas em um PDF em Java?
As dimensões das margens também são definidas por meio de ChromePdfRenderOptions. A biblioteca expõe setters separados para margens superior, inferior, esquerda e direita, todos aceitando valores em milímetros.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/custom-margins.java
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set all four margins in millimeters
options.setMarginTop(20);
options.setMarginBottom(20);
options.setMarginLeft(15);
options.setMarginRight(15);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<p>Document with custom margins</p>", options);
pdf.saveAs("custom-margins.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/custom-margins.java
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set all four margins in millimeters
options.setMarginTop(20);
options.setMarginBottom(20);
options.setMarginLeft(15);
options.setMarginRight(15);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<p>Document with custom margins</p>", options);
pdf.saveAs("custom-margins.pdf");
Definir todas as margens para zero remove completamente o espaço em branco, o que é útil para designs em sangramento total, como etiquetas, certificados ou layouts gráficos.
0 desativa a margem nessa borda. Observe que as margens do driver da impressora são separadas das margens do IronPDF, então o conteúdo que preenche a página de ponta a ponta ainda pode ser cortado quando impresso.Para um exemplo de código funcional, visite o exemplo de margens personalizadas.
Como adiciono cabeçalhos e rodapés a um PDF em Java?
O IronPDF suporta dois tipos de cabeçalhos e rodapés: baseados em texto (TextHeaderFooter) e baseados em HTML (HtmlHeaderFooter). Cabeçalhos de texto são rápidos de configurar; Os cabeçalhos HTML suportam estilo completo e imagens.
Adicionando um Cabeçalho e Rodapé de Texto
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/text-header-footer.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.headerfooter.*;
import com.ironsoftware.ironpdf.render.*;
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Configure a text-based header
TextHeaderFooter header = new TextHeaderFooter();
// Use merge fields: {page}, {total-pages}, {date}, {time}, {url}, {html-title}
header.setCenterText("Report Title");
header.setRightText("Page {page} of {total-pages}");
options.setTextHeader(header);
// Configure a text-based footer
TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("Confidential");
footer.setCenterText("{date}");
options.setTextFooter(footer);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<h1>Annual Report</h1><p>Content here.</p>", options);
pdf.saveAs("report-with-headers.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/text-header-footer.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.headerfooter.*;
import com.ironsoftware.ironpdf.render.*;
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Configure a text-based header
TextHeaderFooter header = new TextHeaderFooter();
// Use merge fields: {page}, {total-pages}, {date}, {time}, {url}, {html-title}
header.setCenterText("Report Title");
header.setRightText("Page {page} of {total-pages}");
options.setTextHeader(header);
// Configure a text-based footer
TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("Confidential");
footer.setCenterText("{date}");
options.setTextFooter(footer);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<h1>Annual Report</h1><p>Content here.</p>", options);
pdf.saveAs("report-with-headers.pdf");
Os campos de mesclagem {page}, {total-pages}, {date}, {time}, {url} e {html-title} são substituídos em tempo de renderização por valores específicos do documento.
Adicionando um Cabeçalho HTML
Para cabeçalhos que exigem logotipos, cores da marca ou layouts complexos, use HtmlHeaderFooter:
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-header.java
import com.ironsoftware.ironpdf.headerfooter.*;
HtmlHeaderFooter header = new HtmlHeaderFooter();
header.setHtmlFragment(
"<div style='background:#003366;color:white;padding:8px;font-family:Arial;'>"
+ "<img src='/images/logo.png' style='height:30px;float:left;'/>"
+ "<span style='line-height:30px;margin-left:10px;'>Company Report</span>"
+ "</div>"
);
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
options.setHtmlHeader(header);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<h1>Q3 Results</h1>", options);
pdf.saveAs("report-with-html-header.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-header.java
import com.ironsoftware.ironpdf.headerfooter.*;
HtmlHeaderFooter header = new HtmlHeaderFooter();
header.setHtmlFragment(
"<div style='background:#003366;color:white;padding:8px;font-family:Arial;'>"
+ "<img src='/images/logo.png' style='height:30px;float:left;'/>"
+ "<span style='line-height:30px;margin-left:10px;'>Company Report</span>"
+ "</div>"
);
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
options.setHtmlHeader(header);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<h1>Q3 Results</h1>", options);
pdf.saveAs("report-with-html-header.pdf");
Veja o exemplo de código de cabeçalhos e rodapés para opções adicionais de campos de mesclagem e comportamento em várias páginas.
Como aplico uma marca d'água a um PDF em Java?
O IronPDF aplica marcas d'água carimbando conteúdo HTML sobre as páginas PDF existentes. Esta abordagem oferece controle total sobre o posicionamento, transparência e estilo.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/watermark.java
import com.ironsoftware.ironpdf.*;
// Create the base PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Confidential Report</h1>");
// Apply a diagonal text watermark using HTML stamping
String watermarkHtml =
"<div style='position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-45deg);"
+ "font-size:80px;color:rgba(200,0,0,0.15);font-family:Arial;font-weight:bold;"
+ "white-space:nowrap;pointer-events:none;'>CONFIDENTIAL</div>";
pdf.applyStamp(watermarkHtml);
pdf.saveAs("watermarked-report.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/watermark.java
import com.ironsoftware.ironpdf.*;
// Create the base PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Confidential Report</h1>");
// Apply a diagonal text watermark using HTML stamping
String watermarkHtml =
"<div style='position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-45deg);"
+ "font-size:80px;color:rgba(200,0,0,0.15);font-family:Arial;font-weight:bold;"
+ "white-space:nowrap;pointer-events:none;'>CONFIDENTIAL</div>";
pdf.applyStamp(watermarkHtml);
pdf.saveAs("watermarked-report.pdf");
O método applyStamp aceita HTML/CSS padrão. O uso de uma cor semitransparente rgba para o texto garante que a marca d'água fique visível sem obscurecer o conteúdo do documento abaixo dela.
Para marcas d'água baseadas em imagens ou marcas d'água aplicadas a intervalos específicos de páginas, veja o guia de como criar marca d'água personalizada for Java.
Como Comprimir um Arquivo PDF em Java?
Para arquivos PDF que contêm imagens, o IronPDF pode reduzir o tamanho do arquivo através da reamostragem de imagens incorporadas para uma resolução mais baixa. Use compressImages em um PdfDocument existente.
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/compress-pdf.java
// Load an existing PDF or use one created by IronPDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("large-report.pdf"));
// Reduce image quality to 60% (value range: 1–100)
pdf.compressImages(60);
// Save the compressed document
pdf.saveAs("compressed-report.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/compress-pdf.java
// Load an existing PDF or use one created by IronPDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("large-report.pdf"));
// Reduce image quality to 60% (value range: 1–100)
pdf.compressImages(60);
// Save the compressed document
pdf.saveAs("compressed-report.pdf");
O parâmetro de qualidade é um inteiro de 1 a 100, onde 100 preserva total qualidade da imagem e valores menores reduzem o tamanho do arquivo à custa da fidelidade da imagem. Um valor de 60 a 80 oferece um equilíbrio prático entre tamanho e qualidade visual para a maioria dos documentos empresariais.
Veja o exemplo de compressão de PDF para mais detalhes sobre os limites de qualidade de imagem.
Próximos passos
Este tutorial cobriu os três métodos de conversão de HTML para PDF (string, URL e arquivo), juntamente com tamanho de página, margens, cabeçalhos, rodapés, marcas d'água e compressão. Estas são as operações de formatação de PDF mais comuns para aplicações servidoras Java.
Para avançar com o IronPDF for Java:
- Explore os exemplos de código completos para IronPDF for Java para pontos de partida de copiar e colar
- Leia o exemplo de configurações de geração de PDF para DPI, zoom e opções de qualidade de renderização
- Veja como extrair texto e imagens de PDFs existentes
- Aprenda como imprimir PDFs programaticamente de uma aplicação Java
Consulte a referência da API IronPDF for Java para obter a lista completa de métodos
PdfDocument
Comece um teste gratuito para gerar PDFs sem marcas d'água, ou veja as opções de licenciamento para adicionar o IronPDF a um projeto de produção.
Tutorial de Acesso Rápido
Baixe este tutorial como código-fonte Java.
O código-fonte completo de HTML para PDF em Java para este tutorial está disponível para download gratuito como um projeto do IntelliJ comprimido.
BaixarExplore este tutorial no GitHub
O código-fonte para este projeto está disponível no GitHub como um projeto IntelliJ IDEA que também pode ser importado no Eclipse ou em outras IDEs Java.
IronPDF for Java exemplos de format-pdfsConsulte a Referência da API.
Explore a referência da API para IronPDF for Java, cobrindo os detalhes de todas as classes, métodos, campos e enums no pacote com.ironsoftware.ironpdf.
Perguntas frequentes
Como converter uma string HTML em PDF em Java?
Use PdfDocument.renderHtmlAsPdf(String html) da biblioteca IronPDF for Java. Passe seu markup HTML como um argumento de string, depois chame saveAs no PdfDocument retornado para gravar o arquivo no disco.
Como adiciono IronPDF a um projeto Maven?
Adicione o artefato com.ironsoftware:ironpdf à seção do seu arquivo pom.xml. Também adicione uma implementação SLF4J, como org.slf4j:slf4j-simple, para habilitar o registro de logs. Execute mvn install para baixar ambos os artefatos.
Como definir o tamanho da página de um PDF gerado com IronPDF for Java?
Crie um objeto ChromePdfRenderOptions e chame setPaperSize(PaperSize.A4) (ou outra constante). Passe o objeto de opções como o segundo argumento para renderHtmlAsPdf. Para dimensões não padronizadas, use setCustomPaperSizeInMillimeters.
Como adicionar um cabeçalho e rodapé a um PDF em Java?
Use TextHeaderFooter para cabeçalhos e rodapés de texto simples ou HtmlHeaderFooter para conteúdo HTML totalmente estilizado. Configure o objeto com texto ou HTML, defina-o em uma instância de ChromePdfRenderOptions usando setTextHeader ou setHtmlHeader e passe as opções para o método de renderização.
Como aplicar uma marca d'água a um PDF usando IronPDF for Java?
Chame applyStamp(String htmlFragment) em um PdfDocument existente. Passe uma string HTML que define a aparência da marca d'água, usando CSS position:absolute, transform:rotate e uma cor rgba semi-transparente para sobrepor texto sem obscurecer o conteúdo abaixo.
O IronPDF for Java pode converter uma página da web em PDF?
Sim. Chame PdfDocument.renderUrlAsPdf(String url) com o URL da página. O IronPDF usa um mecanismo de renderização Chromium para buscar e executar a página, incluindo JavaScript, antes de gerar a saída em PDF.
Como remover a marca d'água IronPDF de PDFs gerados?
Chame License.setLicenseKey("YOUR-LICENSE-KEY") antes de qualquer operação de PDF. A marca d'água é aplicada a PDFs gerados sem uma chave de licença válida. Você pode obter uma licença ou uma chave de avaliação gratuita em ironpdf.com/java/licensing/.
Como comprimir um arquivo PDF com IronPDF for Java?
Carregue o PDF usando PdfDocument.fromFile, depois chame compressImages(int quality) com um valor de 1 a 100. Valores mais baixos reduzem o tamanho do arquivo ao reamostrar imagens incorporadas em resolução mais baixa. Chame saveAs para gravar o arquivo comprimido.
O IronPDF for Java suporta margens de página personalizadas?
Sim. Use ChromePdfRenderOptions e chame setMarginTop, setMarginBottom, setMarginLeft e setMarginRight com valores em milímetros. Passe as opções para o método de renderização para aplicar as margens.
Quais versões de Java o IronPDF suporta?
O IronPDF for Java suporta Java 8 e posterior. A biblioteca está disponível como um artefato Maven em com.ironsoftware:ironpdf e como um download fat-JAR independente em ironpdf.com/java/.






