How to Print PDF Files in C# 14
IronPDF permite a los desarrolladores de C# imprimir archivos PDF de forma programática directamente en impresoras físicas con una única 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 en una llamada a método, lo que permite imprimir varios archivos PDF. La resolución de la impresora también se puede especificar con DPI horizontales y verticales configurables. Use el método que acepta tanto Microsoft PrinterSettings como PrintController para obtener 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: Imprimir archivos PDF en .NET con IronPDF
Imprima fácilmente sus documentos PDF utilizando IronPDF con sólo unas pocas líneas de código. Esta guía le muestra cómo integrar rápidamente la impresión PDF en sus aplicaciones .NET. Con IronPDF, puede enviar archivos directamente a las impresoras con una configuración mínima, mientras disfruta de una configuración flexible y una producción 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.
-
Instala IronPDF con el Administrador de Paquetes NuGet
PM > Install-Package IronPdf -
Copie y ejecute este fragmento de código.
IronPdf.PdfDocument.FromFile("example.pdf").Print(); -
Despliegue para probar en su entorno real
Comienza a usar IronPDF en tu proyecto hoy mismo con una prueba gratuita
Flujo de trabajo mínimo (5 pasos)
- Descargar la biblioteca IronPDF para imprimir PDF
- Prepara el archivo PDF de entrada para imprimir
- Utilizar el método
Printpara enviar archivos PDF a la impresora predeterminada - Especifique el nombre de la impresora para dirigirse a diferentes impresoras
- Utilice el método
GetPrintDocumentpara realizar ajustes avanzados
¿Cómo imprimir archivos PDF con IronPDF?
El método Print está disponible a través del objeto PdfDocument, lo que le permite imprimir tanto archivos PDF recién creados como existentes. Por defecto, el método utiliza la impresora predeterminada del sistema, pero puede especificar una impresora diferente pasando su nombre como 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.
¿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");
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")
¿Qué ocurre cuando envío un PDF a imprimir?
Cuando invoca el método Print, IronPDF envía su documento PDF al spooler de impresión de Windows, que gestiona la cola de impresión para 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.
¿Cómo puedo controlar la calidad y la resolución de impresión?
Puede especificar la resolución del PDF impreso proporcionando el valor DPI deseado al método Print, que aplica el mismo DPI 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");
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")
¿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 proporciona 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 DPI 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 de mapa de bits (basadas en píxeles) y guardándolos como un archivo PDF. Este proceso es manejado por la impresora incorporada de Windows, como 'Microsoft Print to PDF'. Es notable que 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 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("");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")
' Print to file
pdf.PrintToFile("")
¿Cuáles son las ventajas de la rasterización?
La rasterización a través de PrintToFile proporciona varios beneficios:
-
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 del 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, use el método GetPrintDocument, que acepta objetos de Microsoft PrinterSettings y PrintController. Este método devuelve el objeto de documento de impresión actual. El PrinterSettings le permite configurar opciones como rango de páginas y selección de impresora, mientras que PrintController permite el control sobre el proceso de impresión, incluidas la gestión de excepciones, informes de progreso, cuadros de diálogo de impresión, vistas preliminares de impresión y otras tareas relacionadas. A continuación del ejemplo de código se proporcionan descripciones detalladas de las opciones de PrinterSettings. 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();
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()
¿Qué controla cada propiedad PrinterSettings?
Comprender cada propiedad de PrinterSettings le ayuda a afinar su flujo de trabajo de impresión:
-
CanDuplex: Indica si la impresora admite la impresión dúplex (a doble cara). Sitrue, la impresión en ambas caras del papel es posible; de lo contrario, no se puede. -
Collate: Especifica si múltiples archivos PDF o copias de un documento PDF deben ser intercalados (organizados en orden) al imprimir. Cuandotrue, la impresora intercalará las copias; cuandofalse, no lo hará. -
Copies: Establece el número de copias del documento PDF a imprimir. Determina cuántas copias idénticas del documento se imprimirán. -
DefaultPageSettings: Representa la configuración de página predeterminada para la impresora, incluyendo tamaño de papel, márgenes y orientación. Esto es esencial para garantizar que los PDF se impriman correctamente en distintos formatos de papel. -
Duplex: Especifica el modo de impresión dúplex (a doble cara) a utilizar. Las opciones incluyenDuplex.Default,Duplex.Simplex(a una sola cara),Duplex.HorizontalyDuplex.Vertical. -
InstalledPrinters: 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 enPrinterNameestá establecida como la impresora predeterminada en el sistema. -
IsPlotter: Determina si la impresora es una trazadora. 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 las configuraciones de la impresora son válidas y pueden usarse para imprimir archivos PDF. -
LandscapeAngle: Especifica el ángulo (rotación) de la orientación horizontal para la impresora, usualmente 90 grados para retrato. -
MaximumCopies: Representa el número máximo de copias que se puede especificar para la impresión de PDF. -
MaximumPage: Especifica el número máximo de páginas que se puede establecer para impresión o conversión. -
MinimumPage: Especifica el número mínimo de páginas que se puede establecer para impresión o conversión. -
PaperSizes: 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. -
PaperSources: 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. -
PrinterName: Especifica el nombre de la impresora a utilizar para la impresión o conversión. -
PrinterResolutions: Proporciona una colección de resoluciones de impresora disponibles, permitiéndole elegir la calidad de impresión. -
PrintFileName: Obtiene o establece el nombre del archivo al imprimir a un archivo usandoPrintToFile. -
PrintRange: Especifica el rango de páginas PDF a imprimir, como todas las páginas, un rango específico o una selección. Usa esto para imprimir páginas específicas. -
FromPage: Especifica el número de página de inicio para impresión o conversión. La impresión comenzará desde esta página. -
ToPage: Especifica el número de página final para impresión o conversión. La impresión se detendrá después de llegar a esta página. -
PrintToFile: Indica si se debe imprimir a un archivo en lugar de a una impresora física. Cuandotrue, puede especificar la ruta del archivo usandoPrintFileName. SupportsColor: Indica si la impresora admite la impresión en color. Sitrue, 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, haga clic en "Administrar" junto a la impresora que desee y, a continuación, seleccione "Establecer como predeterminada". De este modo, IronPDF utilizará su impresora preferida cuando no se proporcione 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.

