Como imprimir um documento PDF em C# | IronPRINT

How to Print PDF Files in C# 14

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

O IronPDF permite que desenvolvedores C# imprimam arquivos PDF diretamente em impressoras físicas com uma única chamada de método, oferecendo controle preciso sobre as configurações da impressora, resolução (DPI) e manipulação de documentos para fluxos de trabalho de impressão automatizados em aplicativos .NET .

O envio de PDFs para impressoras a partir de código .NET C# automatiza o processo de impressão , permitindo que você integre a funcionalidade de impressão em seus aplicativos, reduza o esforço manual e garanta a consistência na produção de documentos. Proporciona um controle preciso sobre o processo de impressão. Essa funcionalidade é essencial para aplicativos que geram faturas , relatórios ou quaisquer documentos que exijam cópias físicas sem intervenção do usuário .

O IronPDF oferece a opção de imprimir programaticamente em uma impressora física com uma única chamada de método , permitindo imprimir vários arquivos PDF. A resolução da impressora também pode ser especificada com DPI horizontal e vertical configuráveis. Use o método que aceita Microsoft PrinterSettings e PrintController para maior controle sobre o processo de impressão de PDF. Antes de começar a imprimir, certifique-se de ter instalado corretamente o IronPDF em seu projeto .NET .

Início rápido: Imprima PDFs em .NET com IronPDF

Imprima facilmente seus documentos PDF usando o IronPDF com apenas algumas linhas de código . Este guia mostra como integrar rapidamente a impressão em PDF em seus aplicativos .NET . Com o IronPDF, você pode enviar arquivos diretamente para impressoras com configuração mínima , além de desfrutar de configurações flexíveis e resultados de alta qualidade . Comece agora mesmo e simplifique seu fluxo de trabalho de documentos. Para cenários de impressão mais avançados, explore nosso guia completo de PDFs para impressão em papel.

  1. Instale IronPDF com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronPdf
  2. Copie e execute este trecho de código.

    IronPdf.PdfDocument.FromFile("example.pdf").Print();
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronPDF em seu projeto hoje com uma avaliação gratuita

    arrow pointer


Como faço para imprimir arquivos PDF usando o IronPDF?

O método Print está disponível através do objeto PdfDocument, permitindo imprimir arquivos PDF recém-criados e existentes. Por padrão, o método usa a impressora padrão do sistema, mas você pode especificar uma impressora diferente passando seu nome como uma string para o método Print. Essa flexibilidade facilita a integração da impressão em PDF aos fluxos de trabalho existentes, seja para gerar documentos dinamicamente ou para trabalhar com PDFs preexistentes.

ObserveTodos os recursos de impressão são compatíveis apenas com o Windows.

Quais impressoras posso usar como alvo?

O IronPDF permite imprimir em qualquer impressora instalada no seu sistema Windows, incluindo impressoras de rede, impressoras virtuais como "Microsoft Print to PDF" e impressoras físicas conectadas via USB ou rede. Para imprimir especificamente em impressoras de rede, consulte nosso guia de solução de problemas de impressoras de rede para obter dicas adicionais de configuração.

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF")
$vbLabelText   $csharpLabel

O que acontece quando envio um PDF para impressão?

Ao invocar o método Print, o IronPDF envia seu documento PDF para o spooler de impressão do Windows, que gerencia a fila de impressão da impressora selecionada. O documento aparece na fila de impressão com detalhes como nome do arquivo, tamanho e status. O spooler de impressão processa o documento de acordo com as capacidades da impressora e a posição atual na fila.

Fila de impressão do Windows mostrando a opção

Como posso controlar a qualidade e a resolução de impressão?

Você pode especificar a resolução do PDF impresso fornecendo o valor de DPI desejado ao método Print, que aplica o mesmo DPI tanto para as dimensões horizontais quanto verticais. Para usar valores de DPI diferentes, passe dois parâmetros para o método: o primeiro para DPI horizontal (x) e o segundo para DPI vertical (y). Valores de DPI mais altos produzem impressões de melhor qualidade, mas resultam em arquivos maiores e tempos de processamento mais longos.

Quando devo ajustar as configurações de DPI?

Diferentes cenários de impressão exigem diferentes configurações de DPI. Para documentos de escritório padrão, uma resolução de 150 a 300 DPI oferece boa qualidade. Para gráficos ou fotos de alta qualidade, use 600 DPI ou mais. As impressões de rascunho podem usar 72-150 DPI para economizar tempo e recursos. Ao criar PDFs destinados apenas à visualização digital, consulte nosso guia de compressão de PDF para otimizar o tamanho dos arquivos.

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-dpi.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Set custom DPI
pdf.Print(300);

// Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Set custom DPI
pdf.Print(300)

' Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF")
$vbLabelText   $csharpLabel

Quais valores de DPI funcionam melhor para diferentes tipos de impressão?

Vejamos, no próximo exemplo, como rasterizar e imprimir um arquivo PDF. A escolha do DPI depende das suas necessidades específicas:

  • Documentos de texto: 300 DPI proporciona texto nítido e legível.

  • Conteúdo misto (texto e imagens): 300-400 DPI equilibra qualidade e tamanho do arquivo.

  • Fotos de alta qualidade: 600 DPI ou superior preserva os detalhes da imagem.

  • Impressões de rascunho: 150 DPI para cópias de revisão rápida

  • Qualidade de arquivo: 1200 DPI para preservação a longo prazo

Como faço para salvar PDFs sem imprimir fisicamente?

O método PrintToFile rasteriza documentos PDF de forma eficiente, convertendo-os em imagens bitmap (baseadas em pixels) e salvando-as como um arquivo PDF. Esse processo é gerenciado pela impressora integrada do Windows, como a opção "Microsoft Print to PDF". Notavelmente, esse método salva o PDF no disco rígido sem enviá-lo para uma impressora física. Para mais dicas sobre como salvar PDFs, explore nosso guia completo sobre como exportar e salvar PDFs .

Por que usar a opção Imprimir para Arquivo em vez de salvar normalmente?

O PrintToFile oferece vantagens exclusivas quando você precisa simular o processo de impressão sem uma saída física. É particularmente útil para criar arquivos prontos para impressão, testar layouts de impressão ou gerar documentos que correspondam exatamente ao que apareceriam no papel. Esse método também pode ser útil quando você precisa converter PDFs para um formato específico ou aplicar transformações específicas para cada impressora.

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print-to-file.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Print to file
pdf.PrintToFile("");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Print to file
pdf.PrintToFile("")
$vbLabelText   $csharpLabel

Quais são os benefícios da rasterização?

A rasterização por meio do PrintToFile oferece diversas vantagens:

  • Aparência consistente: Garante que o PDF tenha a mesma aparência em diferentes visualizadores.

  • Incorporação de fontes: Converte texto em imagens, eliminando problemas de compatibilidade de fontes.

  • Security: Torna o texto não selecionável e mais difícil de extrair.

  • Pré-visualização de impressão: Mostra exatamente como o documento ficará impresso.

  • Otimização do tamanho do arquivo: Pode reduzir o tamanho do arquivo para gráficos vetoriais complexos.

Para trabalhar com PDFs na memória sem salvá-los em disco, consulte nosso guia de conversão de PDF para MemoryStream .


Como posso acessar as configurações avançadas da impressora?

Para personalizar as opções de impressão, use o método GetPrintDocument, que aceita objetos Microsoft PrinterSettings e PrintController. Este método retorna o objeto do documento de impressão atual. O PrinterSettings permite configurar opções como intervalo de páginas e seleção de impressora, enquanto o PrintController possibilita o controle do processo de impressão, incluindo o tratamento de exceções, relatórios de progresso, caixas de diálogo de impressão, visualizações de impressão e outras tarefas relacionadas. Descrições detalhadas das opções de PrinterSettings são fornecidas abaixo do exemplo de código. Para tamanhos de papel personalizados, consulte nosso guia de tamanhos de papel personalizados .

Quais configurações posso definir?

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-printer-setting.cs
using IronPdf;
using System.Drawing.Printing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Testing</h1>");

PrinterSettings settings = new PrinterSettings() {
    PrinterName = "Microsoft Print to PDF",

    // Number of Copy
    Copies = 2,

    // Page range to print
    FromPage = 2,
    ToPage = 4,
};

PrintDocument document = pdf.GetPrintDocument(settings);

// Print
document.Print();
Imports IronPdf
Imports System.Drawing.Printing

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Testing</h1>")

Private settings As New PrinterSettings() With {
	.PrinterName = "Microsoft Print to PDF",
	.Copies = 2,
	.FromPage = 2,
	.ToPage = 4
}

Private document As PrintDocument = pdf.GetPrintDocument(settings)

' Print
document.Print()
$vbLabelText   $csharpLabel

O que cada propriedade do PrinterSettings controla?

Compreender cada propriedade PrinterSettings ajuda você a otimizar seu fluxo de trabalho de impressão:

  • CanDuplex: Indica se a impressora suporta impressão duplex (frente e verso). Se true, é possível imprimir em ambos os lados do papel; Caso contrário, não pode.

  • Collate: Especifica se vários arquivos PDF ou cópias de um documento PDF devem ser agrupados (organizados em ordem) ao serem impressos. Quando true, a impressora reúne as cópias; quando false, não acontece.

  • Copies: Define o número de cópias do documento PDF a serem impressas. Determina quantas cópias idênticas do documento serão impressas.

  • DefaultPageSettings: Representa as configurações de página padrão da impressora, incluindo tamanho do papel, margens e orientação. Isso é crucial para garantir que seus PDFs sejam impressos corretamente em diferentes formatos de papel.

  • Duplex: Especifica o modo de impressão duplex (frente e verso) a ser utilizado. As opções incluem Duplex.Default, Duplex.Simplex (de um lado), Duplex.Horizontal e Duplex.Vertical.

  • InstalledPrinters: Fornece uma lista dos nomes das impressoras instaladas no sistema. Você pode percorrer essa coleção para obter os nomes das impressoras disponíveis.

  • IsDefaultPrinter: Indica se a impressora especificada em PrinterName está definida como a impressora padrão do sistema.

  • IsPlotter: Determina se a impressora é um plotter. As impressoras plotter são frequentemente usadas para impressão em grandes formatos, como desenhos arquitetônicos ou de engenharia.

  • IsValid: Indica se as configurações da impressora são válidas e podem ser usadas para imprimir arquivos PDF.

  • LandscapeAngle: Especifica o ângulo (rotação) da orientação paisagem para a impressora, geralmente 90 graus para a orientação retrato.

  • MaximumCopies: Representa o número máximo de cópias que podem ser especificadas para impressão de PDF.

  • MaximumPage: Especifica o número máximo de páginas que podem ser definidas para impressão ou conversão.

  • MinimumPage: Especifica o número mínimo de páginas que podem ser definidas para impressão ou conversão.

  • PaperSizes: Fornece uma lista dos tamanhos de papel suportados pela impressora. Você pode consultar esta coleção para determinar os tamanhos de papel disponíveis.

  • PaperSources: Oferece uma coleção de fontes ou bandejas de papel disponíveis para a impressora. Isso pode ser útil na hora de selecionar o tipo de papel para imprimir arquivos PDF.

  • PrinterName: Especifica o nome da impressora a ser usada para impressão ou conversão.

  • PrinterResolutions: Fornece uma coleção de resoluções de impressora disponíveis, permitindo que você escolha a qualidade de impressão.

  • PrintFileName: Obtém ou define o nome do arquivo ao imprimir em um arquivo usando PrintToFile.

  • PrintRange: Especifica o intervalo de páginas do PDF a serem impressas, como todas as páginas, um intervalo específico ou uma seleção. Use esta opção para imprimir páginas específicas.

  • FromPage: Especifica o número da página inicial para impressão ou conversão. A impressão começará a partir desta página.

  • ToPage: Especifica o número da página final para impressão ou conversão. A impressão será interrompida ao chegar a esta página.

  • PrintToFile: Indica se a impressão deve ser feita em um arquivo em vez de em uma impressora física. Quando true, você pode especificar o caminho do arquivo usando PrintFileName.

  • SupportsColor: Indica se a impressora suporta impressão a cores. Se true, a impressão a cores é suportada; Caso contrário, fica limitado à impressão em preto e branco (monocromática).

Como configuro a impressora padrão?

Por fim, para configurar a impressora padrão para imprimir PDFs, acesse a seção "Impressoras e scanners" das configurações do equipamento. No Windows 10 e 11 , acesse Configurações > Dispositivos > Impressoras e scanners e clique em "Gerenciar" ao lado da impressora desejada. Em seguida, selecione "Definir como padrão". Isso garante que o IronPDF use sua impressora preferida quando nenhum nome de impressora específico for fornecido. Para criar PDFs do zero antes de imprimir, explore nosso tutorial completo de criação de PDFs .

Perguntas frequentes

Como posso imprimir arquivos PDF programaticamente em C# .NET?

O IronPDF permite imprimir arquivos PDF programaticamente com uma única chamada de método usando o método Print(). Basta carregar seu arquivo PDF com IronPdf.PdfDocument.FromFile("example.pdf").Print() para enviá-lo à impressora padrão ou especificar o nome de uma impressora diferente.

Que controle tenho sobre as configurações da impressora ao imprimir PDFs?

O IronPDF oferece controle preciso sobre as configurações da impressora, incluindo a resolução (DPI), tanto horizontal quanto vertical. Você pode usar métodos que aceitam Microsoft PrinterSettings e PrintController para controle avançado do processo de impressão em PDF.

Posso imprimir em uma impressora específica em vez da impressora padrão?

Sim, o IronPDF permite especificar uma impressora diferente, passando o nome dela como uma string para o método Print. Por padrão, ele usa a impressora padrão do sistema, mas você pode facilmente selecionar qualquer impressora disponível no seu sistema.

É possível imprimir vários arquivos PDF automaticamente?

Sim, o IronPDF suporta a impressão programática de vários arquivos PDF, sendo ideal para processamento em lote e fluxos de trabalho automatizados. Isso é particularmente útil para aplicativos que geram faturas, relatórios ou documentos que exigem cópias físicas sem intervenção do usuário.

Quais plataformas são compatíveis com a impressão em PDF?

Embora o IronPDF se concentre em aplicações .NET, a Iron Software também oferece o IronPrint, uma biblioteca de impressão dedicada e compatível com as plataformas Windows, macOS, Android e iOS, proporcionando recursos de impressão mais abrangentes.

Como faço para começar a imprimir em PDF no meu projeto .NET?

Primeiro, instale o IronPDF em seu projeto .NET e, em seguida, use o fluxo de trabalho simples: carregue seu arquivo PDF usando PdfDocument.FromFile() e chame o método Print(). Para configurações avançadas, use o método GetPrintDocument para acessar mais opções de impressão.

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
Analisado por
Jeff Fritz
Jeffrey T. Fritz
Gerente de Programa Principal - Equipe da Comunidade .NET
Jeff também é Gerente de Programa Principal das equipes do .NET e do Visual Studio. Ele é o produtor executivo da série de conferências virtuais .NET Conf e apresenta o "Fritz and Friends", uma transmissão ao vivo para desenvolvedores que vai ao ar duas vezes por semana, onde ele conversa sobre tecnologia e escreve código junto com os espectadores. Jeff cria workshops, apresentações e planeja conteúdo para os maiores eventos de desenvolvedores da Microsoft, incluindo o Microsoft Build, o Microsoft Ignite, a .NET Conf e o Microsoft MVP Summit.
Pronto para começar?
Nuget Downloads 18,318,263 | Versão: 2026.4 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronPdf
executar um exemplo Veja seu HTML se transformar em um PDF.