Como criar arquivos PDF em Java
Criar arquivos PDF em Java é simples usando a biblioteca IronPDF , que converte HTML em PDF com métodos como renderHtmlAsPdf() para strings HTML, renderHtmlFileAsPdf() para arquivos HTML e renderUrlAsPdf() para páginas da web.
Início Rápido: Crie seu primeiro PDF em Java
-
Adicione a dependência do IronPDF ao seu arquivo pom.xml:
<dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>1.0.0</version> </dependency><dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>1.0.0</version> </dependency>XML -
Importar classes do IronPDF :
import com.ironsoftware.ironpdf.*;import com.ironsoftware.ironpdf.*;JAVA - Criar PDF a partir de HTML:
```java :title=Início Rápido
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("");
pdf.saveAs(Paths.get("output.pdf"));
Como criar um arquivo PDF em Java
- Instale a biblioteca Java IronPDF.
- Criar arquivo PDF a partir de uma string HTML com o método `renderHtmlAsPdf`
- Utilize o método `renderHtmlFileAsPdf` para criar um arquivo PDF a partir de um arquivo HTML.
- Criar PDF a partir de URL usando o método `renderUrlAsPdf`
- Exporte arquivos PDF protegidos por senha para o diretório desejado.
A criação programática de PDFs em Java permite a geração automatizada de documentos como faturas, relatórios e outros documentos comerciais sob demanda.
Este guia aborda o uso do IronPDF para criar arquivos PDF programaticamente em aplicações Java.
O que é a biblioteca Java IronPDF para PDF?
IronPDF é uma biblioteca Java para criar documentos PDF a partir de HTML. Oferece funções para criar e personalizar PDFs, incluindo:
- Adicionar texto, imagens e outros tipos de conteúdo
- Escolher fontes, cores e controlar o layout e a formatação.
O IronPDF é construído sobre o .NET Framework, permitindo seu uso tanto em aplicações .NET quanto em aplicações Java. A biblioteca oferece suporte a recursos avançados, como marcas d'água personalizadas , compressão de PDF e criação de formulários .
O IronPDF também lida com tarefas relacionadas a PDFs, incluindo conversão de formato de arquivo, extração de texto e dados e criptografia de senhas. Você pode mesclar vários PDFs ou dividi-los conforme necessário.
Como faço para criar documentos PDF em uma aplicação Java?
Quais são os pré-requisitos?
Para usar o IronPDF em um projeto Maven, certifique-se de que os seguintes pré-requisitos estejam instalados:
- Java Development Kit (JDK): Necessário para compilar e executar aplicações Java. Download from Oracle website.
- Maven: Necessário para baixar as bibliotecas do projeto. Faça o download no site do Apache Maven .
- Biblioteca IronPDF : Adicione ao projeto Maven como dependência no arquivo pom.xml:
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>1.0.0</version>
</dependency>
Para projetos Gradle, adicione o IronPDF usando:
implementation 'com.ironsoftware:ironpdf:1.0.0'
Quais etapas devo seguir antes de escrever o código?
Primeiro, adicione esta declaração de importação ao seu arquivo de código-fonte Java:
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.*;
Para funcionalidades específicas, importe classes adicionais:
import com.ironsoftware.ironpdf.render.ChromePdfRenderOptions;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.render.ChromePdfRenderOptions;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.security.SecurityManager;
Em seguida, configure o IronPDF com uma chave de licença válida no método main:
License.setLicenseKey("Your license key");
License.setLicenseKey("Your license key");
Nota : As chaves de licença removem as marcas d'água. Adquira uma chave de licença ou obtenha uma avaliação gratuita . Sem licença, os PDFs são gerados com marcas d'água. Consulte a seção "Usando chaves de licença" para obter detalhes.
Como faço para criar arquivos PDF a partir de uma string HTML em Java?
Use renderHtmlAsPdf() para converter strings HTML em PDFs. Este método suporta renderização em HTML5, CSS3 e JavaScript .
Passe uma string HTML para renderHtmlAsPdf. O IronPDF o converte em uma instância PdfDocument:
// HTML content to be converted to PDF
String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
// Convert HTML string to PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
// Save the PDF document to a file
pdf.saveAs(Paths.get("html.pdf"));
// HTML content to be converted to PDF
String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
// Convert HTML string to PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
// Save the PDF document to a file
pdf.saveAs(Paths.get("html.pdf"));
Isso cria um arquivo "html.pdf" contendo o conteúdo HTML.
Incluir HTML complexo com estilização CSS:
// HTML with CSS styling
String styledHtml = """
<!DOCTYPE html>
<html>
<head>
<style>
body { font-family: Arial, sans-serif; }
h1 { color: #2563eb; }
.content { margin: 20px; padding: 15px; background-color: #f3f4f6; }
</style>
</head>
<body>
<div class="content">
<h1>Styled PDF Document</h1>
<p>This PDF was created from HTML with custom CSS styling.</p>
</div>
</body>
</html>
""";
PdfDocument styledPdf = PdfDocument.renderHtmlAsPdf(styledHtml);
styledPdf.saveAs(Paths.get("styled.pdf"));
// HTML with CSS styling
String styledHtml = """
<!DOCTYPE html>
<html>
<head>
<style>
body { font-family: Arial, sans-serif; }
h1 { color: #2563eb; }
.content { margin: 20px; padding: 15px; background-color: #f3f4f6; }
</style>
</head>
<body>
<div class="content">
<h1>Styled PDF Document</h1>
<p>This PDF was created from HTML with custom CSS styling.</p>
</div>
</body>
</html>
""";
PdfDocument styledPdf = PdfDocument.renderHtmlAsPdf(styledHtml);
styledPdf.saveAs(Paths.get("styled.pdf"));
Para conversões avançadas, consulte o tutorial de HTML para PDF .
Como faço para criar arquivos PDF a partir de páginas HTML em Java?
Criar PDFs a partir de arquivos HTML locais:
// Convert HTML file to PDF
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
// Convert HTML file to PDF
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
O método renderHtmlFileAsPdf aceita um caminho de arquivo como um objeto String ou Path.
O IronPDF renderiza elementos HTML com CSS e JavaScript exatamente como os navegadores fazem. Isso inclui arquivos CSS externos, imagens e bibliotecas JavaScript . Consulte a seção "Arquivos HTML para PDF" para obter mais detalhes.
Use saveAs para salvar o PDF em um local específico.
Como faço para criar arquivos PDF a partir de uma URL em Java?
Use renderUrlAsPdf() para criar PDFs a partir de páginas da web:
// Convert a URL to PDF
PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
// Convert a URL to PDF
PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
Para sites autenticados, forneça as credenciais:
// Create render options with login credentials
ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();
renderOptions.setAuthUsername("username");
renderOptions.setAuthPassword("password");
// Convert secured URL to PDF
PdfDocument securedPdf = PdfDocument.renderUrlAsPdf("https://secure-site.com", renderOptions);
securedPdf.saveAs(Paths.get("secured.pdf"));
// Create render options with login credentials
ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();
renderOptions.setAuthUsername("username");
renderOptions.setAuthPassword("password");
// Convert secured URL to PDF
PdfDocument securedPdf = PdfDocument.renderUrlAsPdf("https://secure-site.com", renderOptions);
securedPdf.saveAs(Paths.get("secured.pdf"));
Consulte o exemplo de código URL para PDF para obter detalhes. Para autenticação complexa, consulte Logins de Site e Sistema .
Como formatar arquivos PDF?
Use ChromePdfRenderOptions para especificar a formatação do PDF. Configure a orientação, o tamanho e as margens da página. Passe as opções como segundo argumento para os métodos de renderização:
// Create render options with custom settings
ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();
// Set page orientation to landscape
renderOptions.setPaperOrientation(PaperOrientation.LANDSCAPE);
// Set custom paper size (Letter size)
renderOptions.setPaperSize(PaperSize.LETTER);
// Set custom margins (in millimeters)
renderOptions.setMarginTop(10);
renderOptions.setMarginRight(10);
renderOptions.setMarginBottom(10);
renderOptions.setMarginLeft(10);
// Enable background images and colors
renderOptions.setPrintHtmlBackgrounds(true);
// Apply options to PDF generation
PdfDocument formattedPdf = PdfDocument.renderHtmlAsPdf("<h1>Formatted PDF</h1>", renderOptions);
formattedPdf.saveAs(Paths.get("formatted.pdf"));
// Create render options with custom settings
ChromePdfRenderOptions renderOptions = new ChromePdfRenderOptions();
// Set page orientation to landscape
renderOptions.setPaperOrientation(PaperOrientation.LANDSCAPE);
// Set custom paper size (Letter size)
renderOptions.setPaperSize(PaperSize.LETTER);
// Set custom margins (in millimeters)
renderOptions.setMarginTop(10);
renderOptions.setMarginRight(10);
renderOptions.setMarginBottom(10);
renderOptions.setMarginLeft(10);
// Enable background images and colors
renderOptions.setPrintHtmlBackgrounds(true);
// Apply options to PDF generation
PdfDocument formattedPdf = PdfDocument.renderHtmlAsPdf("<h1>Formatted PDF</h1>", renderOptions);
formattedPdf.saveAs(Paths.get("formatted.pdf"));
Consulte as Configurações de geração de PDF para obter mais opções. Explore tamanhos de papel e margens personalizadas .
Como faço para proteger arquivos PDF com senha?
Use SecurityOptions para proteger PDFs com senha:
// Create security options and set user password
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setUserPassword("shareable");
// Create security options and set user password
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setUserPassword("shareable");
Defina opções de segurança avançadas:
// Advanced security settings
SecurityOptions advancedSecurity = new SecurityOptions();
advancedSecurity.setUserPassword("user123");
advancedSecurity.setOwnerPassword("owner456");
// Restrict permissions
advancedSecurity.setAllowPrint(false);
advancedSecurity.setAllowCopy(false);
advancedSecurity.setAllowEditContent(false);
advancedSecurity.setAllowEditAnnotations(false);
// Advanced security settings
SecurityOptions advancedSecurity = new SecurityOptions();
advancedSecurity.setUserPassword("user123");
advancedSecurity.setOwnerPassword("owner456");
// Restrict permissions
advancedSecurity.setAllowPrint(false);
advancedSecurity.setAllowCopy(false);
advancedSecurity.setAllowEditContent(false);
advancedSecurity.setAllowEditAnnotations(false);
Aplique a segurança através do código SecurityManager do PDF:
// Apply security options to the PDF
SecurityManager securityManager = urlToPdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
// Save the password-protected PDF document
urlToPdf.saveAs("protected.pdf");
// Apply security options to the PDF
SecurityManager securityManager = urlToPdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
// Save the password-protected PDF document
urlToPdf.saveAs("protected.pdf");
Abrir o PDF aciona uma solicitação de senha:
Após inserir a senha correta, o PDF abre normalmente.
Consulte o exemplo de segurança e metadados para obter configurações adicionais.
Qual é o código-fonte completo?
Código-fonte completo deste tutorial:
// Import statement for IronPDF Java
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) throws IOException {
// Apply your license key
License.setLicenseKey("Your License Key");
// Convert HTML string to a PDF and save it
String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
pdf.saveAs(Paths.get("html.pdf"));
// Convert HTML file to a PDF and save it
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
// Convert URL to a PDF and save it
PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
urlToPdf.saveAs(Paths.get("urlToPdf.pdf"));
// Password-protect the PDF file
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setUserPassword("shareable");
SecurityManager securityManager = urlToPdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
urlToPdf.saveAs(Paths.get("protected.pdf"));
}
}
// Import statement for IronPDF Java
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) throws IOException {
// Apply your license key
License.setLicenseKey("Your License Key");
// Convert HTML string to a PDF and save it
String htmlString = "<h1>Hello World!</h1><p>This is an example HTML string.</p>";
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(htmlString);
pdf.saveAs(Paths.get("html.pdf"));
// Convert HTML file to a PDF and save it
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
// Convert URL to a PDF and save it
PdfDocument urlToPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");
urlToPdf.saveAs(Paths.get("urlToPdf.pdf"));
// Password-protect the PDF file
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setUserPassword("shareable");
SecurityManager securityManager = urlToPdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
urlToPdf.saveAs(Paths.get("protected.pdf"));
}
}
O IronPDF renderiza imagens e texto sem perda de formatação. Os botões continuam clicáveis e as caixas de texto continuam editáveis. A biblioteca oferece suporte à adição de assinaturas , renderização de gráficos e impressão de PDFs .
Quais são os principais pontos a serem destacados?
Este guia demonstrou como criar PDFs em Java usando o IronPDF. O IronPDF fornece uma API simples para gerar PDFs a partir de arquivos HTML, documentos XML ou outras fontes.
Gere relatórios, faturas ou qualquer tipo de documento rapidamente. Implante na AWS , Azure ou Google Cloud .
O IronPDF requer uma licença comercial a partir de $799. Obtenha uma avaliação gratuita para testes de produção.
Perguntas frequentes
Qual é a maneira mais fácil de criar um arquivo PDF em Java?
A maneira mais fácil de criar um PDF em Java é usando o método `renderHtmlAsPdf()` do IronPDF. Basta passar uma string HTML para este método e salvar o resultado: `PdfDocument pdf = PdfDocument.renderHtmlAsPdf("Hello World!"); pdf.saveAs(Paths.get("output.pdf"));`
Como adiciono o IronPDF ao meu projeto Maven?
Adicione o IronPDF ao seu projeto Maven incluindo esta dependência no seu arquivo pom.xml:
Posso converter arquivos HTML existentes para o formato PDF?
Sim, o IronPDF fornece o método renderHtmlFileAsPdf() especificamente para converter arquivos HTML em PDF. Esse método lê um arquivo HTML do seu sistema de arquivos e o converte em um documento PDF.
Como posso gerar PDFs a partir de páginas da web em Java?
O IronPDF oferece o método renderUrlAsPdf() para converter páginas da web diretamente em PDF. Basta fornecer a URL da página da web que você deseja converter e o IronPDF a renderizará como um documento PDF.
Que tipos de documentos comerciais posso criar programaticamente?
O IronPDF permite a geração automatizada de diversos documentos comerciais, incluindo faturas, relatórios, formulários e outros documentos sob demanda. A biblioteca oferece recursos avançados como marcas d'água personalizadas, compressão de PDF e criação de formulários.
É possível criar PDFs protegidos por senha?
Sim, o IronPDF suporta criptografia por senha para arquivos PDF. Você pode exportar PDFs protegidos por senha para o diretório desejado, garantindo a segurança de documentos com informações comerciais confidenciais.
Quais são os requisitos de sistema para usar o IronPDF em Java?
Para usar o IronPDF em Java, você precisa do Java Development Kit (JDK) para compilar e executar aplicativos, do Maven ou Gradle para gerenciamento de dependências e da biblioteca IronPDF adicionada como dependência ao seu projeto.
Posso manipular PDFs existentes, e não apenas criar novos?
Sim, o IronPDF realiza diversas tarefas de manipulação de PDFs além da criação. Você pode mesclar vários PDFs, dividi-los, extrair texto e dados e realizar conversões de formato de arquivo usando os recursos abrangentes da biblioteca.



