Como imprimir arquivos PDF em Java

Como imprimir arquivos PDF usando Java

This article was translated from English: Does it need improvement?
Translated
View the article in English

Para imprimir arquivos PDF em Java, use a biblioteca IronPDF , que fornece métodos simples como printWithoutDialog() para impressão imediata e print() para exibir opções de caixa de diálogo de impressão para os usuários.

Início Rápido: Imprimir Arquivos PDF em Java

```java :title=Início Rápido // Adicione a dependência do IronPDF ao seu arquivo pom.xml do Maven // Importar classes do IronPDF import IronPDF.*;

// Carregar documento PDF PdfDocument pdf = new PdfDocument(Paths.get("MyPdf.pdf"));

// Imprimir sem caixa de diálogo pdf.printWithoutDialog();

// Ou mostrar a caixa de diálogo de impressão pdf.print();


## O que é impressão em PDF em Java?

O PDF é importante em aplicações Java porque permite aos desenvolvedores criar e manipular documentos PDF de forma independente da plataforma. O formato PDF é amplamente utilizado para armazenar e compartilhar documentos, tornando-se essencial para aplicações Java que lidam com gerenciamento de documentos ou fluxos de trabalho baseados em documentos.

A impressão de PDFs em Java envolve o envio programático de documentos PDF para impressoras físicas ou virtuais. Essa funcionalidade é essencial para aplicações empresariais que automatizam fluxos de trabalho de impressão de documentos, geram faturas, relatórios ou outros documentos imprimíveis. Os desenvolvedores Java frequentemente implementam recursos de impressão em PDF em aplicativos de desktop, aplicativos do lado do servidor ou sistemas de processamento em lote.

Existem diversas maneiras de gerar e imprimir arquivos PDF em Java. Uma abordagem comum é usar uma biblioteca que fornece classes para criar e manipular documentos PDF. Este guia mostra como usar a biblioteca IronPDF para gerar e imprimir arquivos PDF em aplicações Java. Para obter documentação completa sobre os recursos do IronPDF, visite a [Visão Geral de Introdução](https://ironpdf.com/java/docs/) .

<hr>

<div class="hsg-featured-snippet">
<h3>Como imprimir arquivos PDF em Java</h3>
<ol>
<li><a class="js-modal-open" data-modal-id="download-modal" href="#download-modal">Instale a biblioteca Java para imprimir arquivos PDF.</a></li>
<li>Utilize a classe <a href="#anchor-load-a-pdf-in-a-java-application">`PdfDocument`</a> para carregar um PDF existente.</li>
<li>Chame o método <a href="#anchor-print-a-pdf-document-with-default-settings">`printWithoutDialog`</a> para impressão imediata.</li>
<li>Configure as definições da impressora para obter uma saída personalizada.</li>
<li>Imprimir PDF com o método <a href="#anchor-the-print-dialog">`print`</a> para exibir a caixa de diálogo</li>
</ol>
</div>

## O que é a biblioteca Java IronPDF para PDF?

IronPDF é uma biblioteca Java usada para gerar, manipular e converter documentos PDF. É baseado na [biblioteca IronPDF C# .NET](/) , que fornece recursos semelhantes para a plataforma .NET .

O IronPDF fornece uma API de alto nível para trabalhar com documentos PDF, permitindo que os desenvolvedores trabalhem com arquivos PDF sem se preocuparem com detalhes de baixo nível do formato do arquivo. Ele oferece suporte a operações comuns em PDFs, como criar novos documentos, adicionar conteúdo, formatar texto, mesclar arquivos PDF e dividir arquivos PDF.

O IronPDF suporta a conversão de código HTML, CSS e JavaScript para PDF, facilitando a geração de arquivos PDF a partir de páginas da web ou modelos HTML. Oferece também a funcionalidade de impressão em PDF. A biblioteca lida com todas as complexidades da geração e impressão de PDFs, fornecendo uma API simples e intuitiva que os desenvolvedores Java podem integrar facilmente em seus aplicativos. Saiba mais sobre [como criar PDFs em Java](https://ironpdf.com/java/how-to/java-create-pdf-tutorial/) usando os recursos abrangentes do IronPDF.

## Como faço para imprimir documentos PDF usando o IronPDF Java?

### Quais são os pré-requisitos?

Para imprimir arquivos PDF em Java, você precisa de:

1. Eclipse IDE ou qualquer outra IDE Java (IntelliJ IDEA, NetBeans, etc.)
2. Um projeto Maven em execução no Eclipse ou em outra IDE.
3. Uma conexão de internet estável para instalar a biblioteca Java do IronPDF.
4. Java Development Kit (JDK) 8 ou superior instalado
5. Um arquivo PDF para fins de teste

### Como instalo a biblioteca IronPDF em um projeto Maven?

Para instalar o IronPDF em um projeto Maven, adicione a dependência do IronPDF ao arquivo **pom.xml** do seu projeto.

Adicione as seguintes dependências à seção `<dependencies>` do arquivo pom.xml:

```xml
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>YOUR_VERSION_HERE</version>
</dependency>

Após adicionar as dependências ao arquivo pom.xml, execute o comando mvn install no terminal ou pressione Ctrl+S para baixar e instalar o IronPDF em seu projeto Maven. O sistema de compilação Maven baixa automaticamente todas as dependências necessárias e as disponibiliza para o seu projeto.

Antes de usar o IronPDF, importe as classes do IronPDF no arquivo fonte principal App.java, encontrado na pasta src.

IDE package explorer showing ironpdf-java project structure with src/main/java and App.java file

Árvore do Explorador de Pacotes para IronPDF for Java

Abra o arquivo "App.java" e adicione o pacote IronPDF usando a seguinte instrução de importação:

import IronPDF.*;
import IronPDF.*;
JAVA

Como faço para carregar um PDF em uma aplicação Java?

IronPDF for Java fornece um construtor para carregar conteúdo PDF na biblioteca. Os argumentos válidos incluem uma matriz de bytes e um caminho de arquivo. Para documentos protegidos por senha, um terceiro parâmetro contendo a senha pode ser fornecido.

O trecho de código abaixo carrega um PDF localizado no sistema de arquivos:

// Set the license key for IronPDF
// Learn more about licensing at https://ironpdf.com/java/get-started/license-keys/
License.setLicenseKey("Enter-Your-License");  

// Load PDF from the filesystem
PdfDocument pdf = new PdfDocument(Paths.get("MyPdf.pdf"));

// Alternative: Load from byte array
// byte[] pdfBytes = Files.readAllBytes(Paths.get("MyPdf.pdf"));
// PdfDocument pdfFromBytes = new PdfDocument(pdfBytes);

// For password-protected PDFs
// PdfDocument protectedPdf = new PdfDocument(Paths.get("Protected.pdf"), "password123");
// Set the license key for IronPDF
// Learn more about licensing at https://ironpdf.com/java/get-started/license-keys/
License.setLicenseKey("Enter-Your-License");  

// Load PDF from the filesystem
PdfDocument pdf = new PdfDocument(Paths.get("MyPdf.pdf"));

// Alternative: Load from byte array
// byte[] pdfBytes = Files.readAllBytes(Paths.get("MyPdf.pdf"));
// PdfDocument pdfFromBytes = new PdfDocument(pdfBytes);

// For password-protected PDFs
// PdfDocument protectedPdf = new PdfDocument(Paths.get("Protected.pdf"), "password123");
JAVA

Como faço para imprimir um documento PDF com as configurações padrão?

O IronPDF oferece duas maneiras de imprimir arquivos PDF. A primeira opção imprime o documento imediatamente, utilizando as configurações padrão de impressora e página. Utilize o método printWithoutDialog para executar esta ação. Este método é útil para cenários de impressão em lote automatizada onde a interação do usuário não é necessária.

// Print PDF document using default printer settings without showing a print dialog
// This will immediately send the document to the default system printer
pdf.printWithoutDialog();

// The method returns immediately after sending the print job to the spooler
System.out.println("PDF document sent to default printer");
// Print PDF document using default printer settings without showing a print dialog
// This will immediately send the document to the default system printer
pdf.printWithoutDialog();

// The method returns immediately after sending the print job to the spooler
System.out.println("PDF document sent to default printer");
JAVA

Essa abordagem é ideal para aplicações do lado do servidor, fluxos de trabalho automatizados ou quando se deseja fornecer uma opção de impressão rápida sem exigir interação do usuário. Para cenários de impressão mais avançados, consulte o exemplo de impressão de PDFs na documentação.

O que é a caixa de diálogo de impressão?

A segunda opção permite ao usuário especificar as opções de impressão antes de imprimir. Utilize o método print para obter essa funcionalidade. Este método exibe a caixa de diálogo de impressão padrão do sistema, dando aos usuários controle total sobre o processo de impressão.

// Display print dialog to let the user specify printing options
// This will show the system print dialog with all available printers
pdf.print();

// The method will wait for user interaction before proceeding
// User can select printer, paper size, orientation, number of copies, etc.
// Display print dialog to let the user specify printing options
// This will show the system print dialog with all available printers
pdf.print();

// The method will wait for user interaction before proceeding
// User can select printer, paper size, orientation, number of copies, etc.
JAVA

A janela de diálogo de impressão é exibida quando esse método é invocado, permitindo que o usuário altere a impressora, defina o tamanho do papel, altere o número de cópias e muito mais. Essa abordagem é perfeita para aplicações de desktop onde se deseja o controle do usuário sobre as opções de impressão. Saiba mais sobre como imprimir em impressoras físicas com opções adicionais.

Windows Print dialog with Microsoft Print to PDF selected, showing page range, copies, and print options

Caixa de diálogo de impressão exibida após a execução do programa usando o método `print()`

Qual é o código-fonte completo?

O arquivo fonte completo usado neste guia está abaixo:

package IronPDF.ironpdf_java;

// Import statement for IronPDF Java
import IronPDF.*;
import java.awt.print.PrinterException;
import java.io.IOException;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) throws PrinterException, IOException {
        // Apply your license key
        // Get your license key from https://ironpdf.com/java/get-started/license-keys/
        License.setLicenseKey("Enter-Your-License");

        // Carregar documento PDF from the file system
        PdfDocument pdf = new PdfDocument(Paths.get("MyPdf.pdf"));

        // Option 1: Print the PDF document without displaying a print dialog
        // Uses default printer and settings
        pdf.printWithoutDialog();

        // Option 2: Display the print dialog for the user to configure printing options
        // Allows selection of printer, copies, page range, etc.
        pdf.print();

        // Don't forget to close the document when done
        pdf.close();
    }
}
package IronPDF.ironpdf_java;

// Import statement for IronPDF Java
import IronPDF.*;
import java.awt.print.PrinterException;
import java.io.IOException;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) throws PrinterException, IOException {
        // Apply your license key
        // Get your license key from https://ironpdf.com/java/get-started/license-keys/
        License.setLicenseKey("Enter-Your-License");

        // Carregar documento PDF from the file system
        PdfDocument pdf = new PdfDocument(Paths.get("MyPdf.pdf"));

        // Option 1: Print the PDF document without displaying a print dialog
        // Uses default printer and settings
        pdf.printWithoutDialog();

        // Option 2: Display the print dialog for the user to configure printing options
        // Allows selection of printer, copies, page range, etc.
        pdf.print();

        // Don't forget to close the document when done
        pdf.close();
    }
}
JAVA

Para obter informações mais detalhadas sobre os métodos e opções de impressão disponíveis, consulte a Referência da API do IronPDF .

Considerações adicionais sobre a impressão de PDFs

Ao implementar a impressão em PDF em aplicações Java, considere estes fatores importantes:

Tratamento de erros

Sempre implemente um tratamento de erros adequado ao imprimir PDFs. As impressoras podem estar offline, sem papel ou apresentando outros problemas:

try {
    pdf.printWithoutDialog();
} catch (PrinterException e) {
    System.err.println("Printing failed: " + e.getMessage());
    // Handle the error appropriately
}
try {
    pdf.printWithoutDialog();
} catch (PrinterException e) {
    System.err.println("Printing failed: " + e.getMessage());
    // Handle the error appropriately
}
JAVA

Otimização de desempenho

Para arquivos PDF grandes ou operações de impressão em lote, considere compactar os PDFs antes de imprimir para reduzir o uso de memória e melhorar a velocidade de impressão.

Compatibilidade entre plataformas

A funcionalidade de impressão do IronPDF funciona em diferentes sistemas operacionais (Windows, Linux, macOS), mas as configurações da impressora e as opções disponíveis podem variar entre as plataformas. Sempre teste a implementação de impressão na plataforma de implantação de destino.

Saiba mais sobre impressão de PDFs em Java usando a biblioteca IronPDF .

Por que devo usar o IronPDF para imprimir PDFs?

IronPDF é uma biblioteca poderosa e fácil de usar para imprimir PDFs em aplicações Java. Com seus recursos abrangentes e extensa documentação, o IronPDF simplifica a geração e personalização de PDFs de qualidade profissional para impressão ou compartilhamento. Seja para criar faturas, relatórios ou outros documentos, o IronPDF oferece as ferramentas necessárias.

O IronPDF oferece integração perfeita com aplicativos Java existentes, tratamento robusto de erros e compatibilidade entre plataformas. O design simples da API da biblioteca permite implementar a funcionalidade de impressão em PDF com apenas algumas linhas de código, ao mesmo tempo que oferece acesso a recursos avançados quando necessário.

O IronPDF oferece um período de teste gratuito para testes em produção. Os preços começam em $799. Give IronPDF a try and see how it can streamline your PDF printing workflow.

Perguntas frequentes

Como faço para imprimir um arquivo PDF em Java sem exibir uma caixa de diálogo de impressão?

Para imprimir um arquivo PDF sem exibir uma caixa de diálogo em Java, use o método `printWithoutDialog()` do IronPDF. Primeiro, carregue seu documento PDF usando a classe `PdfDocument` e, em seguida, basta chamar `pdf.printWithoutDialog()` para imprimir imediatamente na impressora padrão.

Qual a diferença entre os métodos print() e printWithoutDialog()?

O IronPDF oferece dois métodos de impressão: print() exibe uma caixa de diálogo de impressão que permite aos usuários selecionar as configurações e preferências da impressora antes de imprimir, enquanto printWithoutDialog() envia o documento diretamente para a impressora padrão sem qualquer interação do usuário, ideal para impressão em lote automatizada.

Como adiciono o IronPDF ao meu projeto Java para impressão em PDF?

Para adicionar o IronPDF ao seu projeto Java, inclua-o como uma dependência no seu arquivo pom.xml do Maven. Depois de adicionado, importe as classes necessárias do IronPDF (import com.ironsoftware.ironpdf.*) para acessar a funcionalidade de impressão em PDF na sua aplicação Java.

Posso configurar as definições da impressora ao imprimir PDFs em Java?

Sim, o IronPDF permite configurar as definições de impressão para obter resultados personalizados ao imprimir PDFs. Pode especificar vários parâmetros e opções de impressão para controlar a forma como os seus documentos PDF são impressos, garantindo que cumprem os seus requisitos específicos.

É possível imprimir PDFs em aplicações Java do lado do servidor?

Sim, o IronPDF suporta impressão de PDFs em aplicações Java do lado do servidor. É comumente usado em sistemas de processamento em lote e fluxos de trabalho automatizados de documentos, onde PDFs precisam ser impressos sem interação do usuário, tornando-o ideal para aplicações corporativas que geram faturas, relatórios e outros documentos.

Quais tipos de impressoras são compatíveis com a impressão em PDF?

O IronPDF suporta impressão tanto em impressoras físicas quanto virtuais. Essa flexibilidade permite enviar documentos PDF para impressoras de escritório padrão, impressoras de rede ou impressoras virtuais de PDF para processamento posterior, tornando-o adequado para diversos cenários de negócios e fluxos de trabalho de gerenciamento de documentos.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Versão: 2026.3 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas?
executar um exemplo Veja seu HTML se transformar em um PDF.