Cómo imprimir un documento PDF en C# | IronPRINT

Cómo imprimir archivos PDF en C#

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

IronPDF permite a los desarrolladores de C# imprimir mediante programación archivos PDF directamente en impresoras físicas con una sola llamada a un método, ofreciendo un control preciso sobre la configuración de la impresora, la resolución (PPP) y la gestión de documentos para flujos de trabajo de impresión automatizados en aplicaciones .NET.

El envío de archivos PDF a impresoras desde código .NET C# automatiza el proceso de impresión, lo que le permite integrar la funcionalidad de impresión en sus aplicaciones, reducir los esfuerzos manuales y garantizar la coherencia en la producción de documentos. Proporciona un control preciso sobre el proceso de impresión. Esta capacidad es esencial para aplicaciones que generan facturas, informes o cualquier documento que requiera copias físicas sin intervención del usuario.

IronPDF ofrece la opción de imprimir mediante programación en una impresora física con una sola llamada a un método, lo que permite imprimir varios archivos PDF. La resolución de la impresora también puede especificarse con DPI horizontales y verticales configurables. Utilice el método que acepta tanto PrinterSettings de Microsoft como PrintController para un mayor control sobre el proceso de impresión de PDF. Antes de empezar a imprimir, asegúrese de que ha instalado correctamente IronPDF en su proyecto .NET.

Inicio rápido: Imprime PDFs en .NET con IronPDF

Imprime fácilmente tus documentos PDF usando IronPDF con solo unas pocas líneas de código. Esta guía te muestra cómo integrar rápidamente la impresión de PDF en tus aplicaciones .NET. Con IronPDF, puedes enviar archivos directamente a impresoras con mínima configuración, todo mientras disfrutas de configuraciones flexibles y salida de alta calidad. Comienza ahora y simplifica tu flujo de trabajo de documentos. Para situaciones de impresión más avanzadas, explore nuestra completa guía de PDF de impresión en papel.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronPDF con el gestor de paquetes NuGet

    PM > Install-Package IronPdf

  2. Copie y ejecute este fragmento de código.

    IronPdf.PdfDocument.FromFile("example.pdf").Print();
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronPDF en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


¿Cómo imprimir archivos PDF con IronPDF?

El método Print está disponible a través del objeto PdfDocument, permitiéndote imprimir tanto archivos PDF recién creados como existentes. Por defecto, el método utiliza la impresora predeterminada del sistema, pero puedes especificar una impresora diferente pasando su nombre como una cadena al método Print. Esta flexibilidad facilita la integración de la impresión en PDF en los flujos de trabajo existentes, tanto si se generan documentos dinámicamente como si se trabaja con PDF preexistentes.

Por favor notaTodas las funciones de impresión sólo son compatibles con Windows.

¿A qué impresoras puedo dirigirme?

IronPDF permite imprimir en cualquier impresora instalada en el sistema Windows, incluidas impresoras de red, impresoras virtuales como "Microsoft Print to PDF" e impresoras físicas conectadas mediante USB o red. Para imprimir específicamente en impresoras de red, consulte nuestra guía de solución de problemas de impresoras de red para obtener más consejos de configuración.

: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");
$vbLabelText   $csharpLabel

¿Qué ocurre cuando envío un PDF a imprimir?

Cuando se invoca el método Print, IronPDF envía el documento PDF a la cola de impresión de Windows, que gestiona la cola de impresión de la impresora seleccionada. El documento aparece en la cola de impresión con detalles como el nombre del archivo, el tamaño y el estado. A continuación, la cola de impresión procesa el documento según las capacidades de la impresora y la posición actual en la cola.

Cola de impresión de Windows mostrando Microsoft Print to PDF con el documento en cola, mostrando el estado del trabajo y los detalles del archivo

¿Cómo puedo controlar la calidad y la resolución de impresión?

Puede especificar la resolución del PDF impreso proporcionando el valor de PPP deseado al método Print, que aplica los mismos PPP para las dimensiones horizontal y vertical. Para usar valores de DPI diferentes, pasa dos parámetros al método: el primero para el DPI horizontal (x) y el segundo para el DPI vertical (y). Los valores de PPP más altos producen impresiones de mejor calidad, pero dan lugar a archivos de mayor tamaño y tiempos de procesamiento más largos.

¿Cuándo debo ajustar la configuración de PPP?

Diferentes escenarios de impresión requieren diferentes configuraciones de PPP. Para documentos de oficina estándar, 150-300 DPI proporcionan una buena calidad. Para gráficos o fotos de alta calidad, utilice 600 DPI o más. Los borradores se pueden imprimir a 72-150 DPI para ahorrar tiempo y recursos. Cuando cree archivos PDF para su visualización digital, consulte nuestra Guía de compresión de PDF para optimizar el tamaño de los archivos.

: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");
$vbLabelText   $csharpLabel

¿Qué valores de PPP funcionan mejor para los distintos tipos de impresión?

Veamos cómo rasterizar e imprimir un archivo PDF en el siguiente ejemplo. La elección de la DPI depende de sus necesidades específicas:

  • Documentos de texto: 300 DPI para un texto nítido y legible
  • Contenido mixto (texto e imágenes): 300-400 DPI equilibra la calidad y el tamaño del archivo
  • Fotos de alta calidad: 600 PPP o superior para conservar el detalle de la imagen
  • Impresiones en borrador: 150 DPI para copias de revisión rápidas
  • Calidad de archivo: 1200 DPI para conservación a largo plazo

¿Cómo guardar archivos PDF sin imprimirlos físicamente?

El método PrintToFile rasteriza eficientemente documentos PDF convirtiéndolos en imágenes bitmap (basadas en píxeles) y guardándolos como un archivo PDF. Este proceso es manejado por la impresora integrada de Windows, como "Microsoft Print to PDF." Notablemente, este método guarda el PDF en el disco sin enviarlo a una impresora física. Si desea conocer más formas de guardar archivos PDF, consulte nuestra guía completa sobre cómo exportar y guardar archivos PDF.

¿Por qué usar PrintToFile en lugar de guardar regularmente?

PrintToFile ofrece ventajas únicas cuando se necesita simular el proceso de impresión sin salida física. Es especialmente útil para crear archivos listos para imprimir, probar diseños de impresión o generar documentos que coincidan exactamente con lo que aparecerían en papel. Este método también puede ayudar cuando se necesita convertir archivos PDF a un formato específico o aplicar transformaciones específicas de la impresora.

: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("");
$vbLabelText   $csharpLabel

¿Cuáles son las ventajas de la rasterización?

La rasterización mediante PrintToFile ofrece varias ventajas:

  • Aspecto coherente: Garantiza que el PDF tenga un aspecto idéntico en distintos visores
  • Incorporación de fuentes: Convierte el texto en imágenes, eliminando los problemas de compatibilidad de fuentes
  • Seguridad: Hace que el texto no se pueda seleccionar y sea más difícil de extraer
  • Vista previa de impresión: muestra exactamente cómo aparecerá el documento cuando se imprima
  • Optimización del tamaño de archivo: Puede reducir el tamaño del archivo para gráficos vectoriales complejos

Para trabajar con archivos PDF en memoria sin guardarlos en disco, consulte nuestra guía PDF to MemoryStream.


¿Cómo puedo acceder a la configuración avanzada de la impresora?

Para personalizar las opciones de impresión, utiliza el método GetPrintDocument, que acepta objetos PrinterSettings y PrintController de Microsoft. Este método devuelve el objeto de documento de impresión actual. PrinterSettings te permite configurar opciones como el rango de páginas y la selección de la impresora, mientras que PrintController permite controlar el proceso de impresión, incluyendo el manejo de excepciones, reporte de progreso, diálogos de impresión, vistas previas de impresión y otras tareas relacionadas. Se proporcionan descripciones detalladas de las opciones PrinterSettings a continuación del ejemplo de código. Para tamaños de papel personalizados, consulte nuestra guía de tamaños de papel personalizados.

¿Qué ajustes puedo configurar?

: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();
$vbLabelText   $csharpLabel

¿Qué controla cada propiedad PrinterSettings?

Comprender cada propiedad de PrinterSettings le ayudará a ajustar su flujo de trabajo de impresión:

  • CanDuplex: indica si la impresora admite la impresión a doble cara. Si es verdadero, es posible imprimir en ambos lados del papel; de lo contrario, no se puede.
  • Compaginar: especifica si se deben compaginar (organizar en orden) varios archivos PDF o copias de un documento PDF al imprimirlos. Cuando es verdadero, la impresora intercala las copias; cuando es falso, no lo hace.
  • Copias: establece el número de copias del documento PDF que se imprimirán. Determina cuántas copias idénticas del documento se imprimirán.
  • ConfiguraciónPáginaPredeterminada: Representa la configuración de página predeterminada de la impresora, incluidos el tamaño del papel, los márgenes y la orientación. Esto es crucial para garantizar que sus PDF se impriman correctamente en diferentes formatos de papel.
  • Dúplex: especifica el modo de impresión dúplex (a doble cara) que se va a utilizar. Las opciones incluyen Duplex.Default, Duplex.Simplex (una cara), Duplex.Horizontal y Duplex.Vertical.
  • ImpresorasInstaladas: Proporciona una colección de nombres de impresoras instaladas en el sistema. Puedes iterar a través de esta colección para obtener los nombres de las impresoras disponibles.
  • IsDefaultPrinter: Indica si la impresora especificada en PrinterName está configurada como impresora predeterminada en el sistema.
  • IsPlotter: Determina si la impresora es un plotter. Las impresoras plóter se utilizan a menudo para impresión de gran formato, como para planos arquitectónicos o de ingeniería.
  • IsValid: indica si la configuración de la impresora es válida y puede utilizarse para imprimir archivos PDF.
  • LandscapeAngle: Especifica el ángulo (rotación) de orientación horizontal para la impresora, normalmente 90 grados para vertical.
  • MáximoDeCopias: Representa el número máximo de copias que se pueden especificar para imprimir PDF.
  • Página máxima: especifica el número máximo de páginas que se puede establecer para la impresión o la conversión.
  • Página mínima: especifica el número mínimo de páginas que se puede establecer para la impresión o la conversión.
  • Tamaños de papel: Proporciona una colección de tamaños de papel compatibles con la impresora. Puedes consultar esta colección para determinar los tamaños de papel disponibles.
  • Fuentes de papel: Ofrece una colección de fuentes o bandejas de papel disponibles para la impresora. Esto puede ser útil al seleccionar la fuente de papel para imprimir archivos PDF.
  • NombreDeImpresora: Especifica el nombre de la impresora que se utilizará para la impresión o la conversión.
  • Resoluciones de impresora: Proporciona una colección de resoluciones de impresora disponibles, lo que permite elegir la calidad de impresión.
  • NombreDeArchivo: Obtiene o establece el nombre del archivo cuando se imprime en un archivo utilizando PrintToFile.
  • PrintRange: especifica el intervalo de páginas PDF que se imprimirán, como todas las páginas, un intervalo específico o una selección. Usa esto para imprimir páginas específicas.
  • FromPage: especifica el número de página inicial para la impresión o la conversión. La impresión comenzará desde esta página.
  • ToPage: Especifica el número de página final para la impresión o conversión. La impresión se detendrá después de llegar a esta página.
  • PrintToFile: Indica si se debe imprimir en un archivo en lugar de en una impresora física. Cuando es verdadero, puede especificar la ruta del archivo utilizando PrintFileName.
  • SoportaColor: indica si la impresora admite la impresión en color. Si es cierto, se admite la impresión en color; de lo contrario, está limitada a la impresión en blanco y negro (monocromo).

¿Cómo configuro la impresora predeterminada?

Por último, para configurar la impresora predeterminada para imprimir archivos PDF, vaya a la sección "Impresoras y escáneres" de la configuración del equipo. En Windows 10 y 11, vaya a Configuración > Dispositivos > Impresoras y escáneres, y haga clic en "Administrar" junto a la impresora deseada, a continuación, seleccione "Establecer como predeterminada." Esto asegura que IronPDF utilice su impresora preferida cuando no se proporciona un nombre de impresora específico. Para crear PDFs desde cero antes de imprimir, explore nuestro tutorial completo de creación de PDF.

Preguntas Frecuentes

¿Cómo puedo imprimir archivos PDF mediante programación en C# .NET?

IronPDF le permite imprimir archivos PDF mediante programación con una sola llamada al método Print(). Simplemente cargue su archivo PDF con IronPDF.PdfDocument.FromFile("ejemplo.pdf").Print() para enviarlo a la impresora predeterminada, o especifique un nombre de impresora para apuntar a una impresora diferente.

¿Qué control tengo sobre la configuración de la impresora al imprimir PDF?

IronPDF proporciona un control preciso sobre la configuración de la impresora, incluida la resolución (PPP), tanto horizontal como vertical. Puede utilizar métodos que acepten Microsoft PrinterSettings y PrintController para obtener un control avanzado sobre el proceso de impresión de PDF.

¿Puedo imprimir en una impresora específica en lugar de la predeterminada?

Sí, IronPDF le permite especificar una impresora diferente pasando su nombre como una cadena al método Print. Por defecto, utiliza la impresora predeterminada del sistema, pero puede utilizar cualquier impresora disponible en su sistema.

¿Es posible imprimir varios archivos PDF automáticamente?

Sí, IronPDF admite la impresión de varios archivos PDF mediante programación, por lo que es ideal para el procesamiento por lotes y los flujos de trabajo automatizados. Esto es especialmente útil para aplicaciones que generan facturas, informes o documentos que requieren copias físicas sin intervención del usuario.

¿Qué plataformas son compatibles con la impresión en PDF?

Aunque IronPDF se centra en aplicaciones .NET, Iron Software también ofrece IronPrint, una biblioteca de impresión dedicada con compatibilidad en plataformas Windows, macOS, Android e iOS para capacidades de impresión más amplias.

¿Cómo puedo empezar a utilizar la impresión en PDF en mi proyecto .NET?

En primer lugar, instale IronPDF en su proyecto .NET y, a continuación, utilice el flujo de trabajo simple: cargue su archivo PDF mediante PdfDocument.FromFile() y llame al método Print(). Para configuraciones avanzadas, utilice el método GetPrintDocument para acceder a más opciones de impresión.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
Revisado por
Jeff Fritz
Jeffrey T. Fritz
Gerente Principal de Programas - Equipo de la Comunidad .NET
Jeff también es Gerente Principal de Programas para los equipos de .NET y Visual Studio. Es el productor ejecutivo de la serie de conferencias virtuales .NET Conf y anfitrión de 'Fritz and Friends', una transmisión en vivo para desarrolladores que se emite dos veces a la semana donde habla sobre tecnología y escribe código junto con la audiencia. Jeff escribe talleres, presentaciones, y planifica contenido para los eventos de desarrolladores más importantes de Microsoft, incluyendo Microsoft Build, Microsoft Ignite, .NET Conf y la Cumbre de Microsoft MVP.
¿Listo para empezar?
Nuget Descargas 17,012,929 | Versión: 2025.12 recién lanzado