Cómo configurar DPI de impresión en C

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

DPI (puntos por pulgada) controla la resolución al imprimir documento: la cantidad de puntos de tinta que una impresora coloca por pulgada de papel. Un DPI más alto produce texto más nítido e imágenes más suaves, pero aumenta el tiempo de procesamiento y el uso de tóner. Un DPI más bajo imprime más rápido y funciona bien para borradores internos. Configurar el DPI programáticamente asegura que cada trabajo de impresión cumpla con el estándar de calidad que requiere la aplicación, independientemente de la configuración de impresora predeterminada del usuario.

IronPrint expone una propiedad Dpi en la clase PrintSettings. Lo configuramos a un valor entero, pasamos los ajustes a Printer.Print(), y el documento se imprime a la resolución especificada. El valor predeterminado es 300 DPI, que coincide con el estándar para impresión comercial.

Inicio rápido: Configurar DPI de impresión

  1. Instale IronPrint a través de NuGet: Install-Package IronPrint
  2. Añada using IronPrint; al archivo
  3. Cree un objeto PrintSettings
  4. Configure Dpi a la resolución deseada (por ejemplo, 300, 600, 1200)
  5. Pase los ajustes a Printer.Print() o Printer.ShowPrintDialog()
  1. Instala IronPrint con el Administrador de Paquetes NuGet

    PM > Install-Package IronPrint
  2. Copie y ejecute este fragmento de código.

    using IronPrint;
    
    // Print a PDF at 600 DPI for high-quality output
    Printer.Print("report.pdf", new PrintSettings
    {
        Dpi = 600
    });
  3. Despliegue para probar en su entorno real

    Comienza a usar IronPrint en tu proyecto hoy mismo con una prueba gratuita

    arrow pointer

¿Cómo configuro DPI de impresión en C#?

La propiedad Dpi en PrintSettings acepta cualquier entero positivo. El valor por defecto es 300, que es la resolución estándar para documentos empresariales. El DPI real utilizado para imprimir puede estar limitado por las capacidades de la impresora física: si configuramos 1200 DPI en una impresora que tiene un máximo de 600, la impresora usará su resolución más alta soportada.

:path=/static-assets/print/content-code-examples/how-to/set-the-dpi/set-the-dpi-office-and-high-res-dpi.cs
using IronPrint;

// Standard office quality (300 DPI)
var officeSettings = new PrintSettings
{
    Dpi = 300
};
Printer.Print("invoice.pdf", officeSettings);

// High-resolution output (600 DPI)
var highResSettings = new PrintSettings
{
    Dpi = 600
};
Printer.Print("photo-proof.png", highResSettings);
Imports IronPrint

' Standard office quality (300 DPI)
Dim officeSettings As New PrintSettings With {
    .Dpi = 300
}
Printer.Print("invoice.pdf", officeSettings)

' High-resolution output (600 DPI)
Dim highResSettings As New PrintSettings With {
    .Dpi = 600
}
Printer.Print("photo-proof.png", highResSettings)
$vbLabelText   $csharpLabel

Con .NET nativo, controlar la resolución de impresión requiere crear un PrintDocument, acceder a DefaultPageSettings.PrinterResolution, manejar el evento PrintPage y renderizar manualmente el contenido con Graphics.DrawImage(). Esto implica 15-25 líneas de código repetitivo. IronPrint reduce esto a una sola propiedad entera en un objeto de configuración.

¿Qué DPI debo usar para diferentes trabajos de impresión?

Elegir el DPI correcto depende del tipo y propósito del contenido. Una resolución más alta no siempre es mejor: aumenta el tamaño del spool y el tiempo de impresión sin beneficio visible para documentos con mucho texto.

DPI Lo mejor para Notas
72–150 Borradores internos, pruebas, impresiones de prueba Salida rápida, bajo uso de tóner
300 Documentos empresariales, facturas, reportes Predeterminado de IronPrint; calidad comercial estándar
600 Materiales de marketing, gráficos, gráficos Imágenes y líneas finas notablemente más nítidas
1200+ Fotografía, archivo, arte fino Requiere impresora compatible; archivos de spool grandes

Para la mayoría de las aplicaciones, 300 DPI proporciona el mejor equilibrio entre calidad y rendimiento. Recomendamos comenzar con el valor predeterminado y aumentar solo cuando la salida requiera una mejora visible en la claridad de la imagen o el detalle fino.

¿Cómo combino DPI con otras configuraciones de impresión?

DPI funciona junto con otras propiedades de PrintSettings para definir un trabajo de impresión completo. Podemos configurar tamaño de papel, orientación, márgenes, copias y modo en escala de grises en el mismo objeto.

:path=/static-assets/print/content-code-examples/how-to/set-the-dpi/set-the-dpi-combine-dpi-with-settings.cs
using IronPrint;

var settings = new PrintSettings
{
    Dpi = 600,
    PaperSize = PaperSize.A4,
    PaperOrientation = PaperOrientation.Landscape,
    PaperMargins = new Margins(10, 10, 10, 10),
    NumberOfCopies = 2,
    Grayscale = true
};

Printer.Print("quarterly-dashboard.pdf", settings);
Imports IronPrint

Dim settings As New PrintSettings With {
    .Dpi = 600,
    .PaperSize = PaperSize.A4,
    .PaperOrientation = PaperOrientation.Landscape,
    .PaperMargins = New Margins(10, 10, 10, 10),
    .NumberOfCopies = 2,
    .Grayscale = True
}

Printer.Print("quarterly-dashboard.pdf", settings)
$vbLabelText   $csharpLabel

Configurar Grayscale = true a 600 DPI produce una salida monocromática nítida que es ideal para cuadros y tablas de datos. Los valores de PaperMargins están en milímetros.

¿Cómo permito que los usuarios ajusten el DPI en el cuadro de diálogo de impresión?

Cuando pasamos PrintSettings a Printer.ShowPrintDialog(), el cuadro de diálogo se abre con nuestro DPI preestablecido. El usuario puede aceptarlo o ajustar la resolución antes de imprimir.

:path=/static-assets/print/content-code-examples/how-to/set-the-dpi/set-the-dpi-dialog-with-dpi-preset.cs
using IronPrint;

// Pre-select 600 DPI, but let the user override
var settings = new PrintSettings
{
    Dpi = 600,
    PaperSize = PaperSize.Letter
};

Printer.ShowPrintDialog("design-proof.pdf", settings);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Para escenarios de UI no bloqueantes, Printer.ShowPrintDialogAsync() acepta los mismos parámetros y mantiene la aplicación receptiva. El cuadro de diálogo permite a los usuarios verificar DPI en relación con las resoluciones soportadas por su impresora antes de imprimir, útil al cambiar entre una impresora láser de oficina de 600 DPI y una impresora fotográfica de 1200 DPI. Para flujos de trabajo completamente automatizados donde no se necesita interacción del usuario, use Printer.Print() para impresión silenciosa en su lugar.

Próximos pasos

DPI es un solo entero en el objeto PrintSettings — configúrelo para que coincida con los requisitos de calidad de cada trabajo de impresión. Comience con 300 para documentos empresariales y aumente a 600 o más para salidas con muchos gráficos.

Explore la guía de configuración de impresión para cada propiedad disponible, la referencia de API de la clase Printer para la superficie completa del método, y la página de ejemplos de código para fragmentos listos para ejecutar. Los tutoriales de IronPrint recorren todo el ciclo de vida de impresión, y el registro de cambios rastrea las actualizaciones recientes.

Comience una prueba gratuita de 30 días para probar configuraciones de DPI en un proyecto en vivo. Cuando estés listo, mira las opciones de licencia a partir de $749.

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
¿Listo para empezar?
Nuget Descargas 38,930 | Versión: 2026.4 recién lanzado
Still Scrolling Icon

¿Aún desplazándote?

¿Quieres una prueba rápida? PM > Install-Package IronPrint
ejecuta una muestra observa cómo tu documento llega a la impresora.