如何在 C# 中设置打印 DPI

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

DPI(每英寸点数)控制着打印分辨率——即打印机在每英寸纸张上放置的墨点数量。 更高的DPI能呈现更清晰的文本和更平滑的图像,但会增加处理时间和碳粉消耗。 较低的DPI打印速度更快,适用于内部草稿。 通过编程方式设置DPI可确保每项打印任务都符合应用程序要求的质量标准,而与用户的默认打印机配置无关。

IronPrintDpi属性。 我们将其设置为一个整数值,将设置传递给Printer.Print(),并且文档在指定的分辨率下打印。 默认分辨率为 300 DPI,符合商业印刷标准。

快速入门:设置打印 DPI

  1. 通过NuGet安装IronPrint: Install-Package IronPrint
  2. 添加using IronPrint;到文件
  3. 创建一个PrintSettings对象
  4. Dpi设置为所需的分辨率(例如300, 600, 1200)
  5. 将设置传递给Printer.ShowPrintDialog()
  1. 使用 NuGet 包管理器安装 https://www.nuget.org/packages/IronPrint

    PM > Install-Package IronPrint
  2. 复制并运行这段代码。

    using IronPrint;
    
    // Print a PDF at 600DPIfor high-quality output
    Printer.Print("report.pdf", new PrintSettings
    {
        Dpi = 600
    });
  3. 部署到您的生产环境中进行测试

    通过免费试用立即在您的项目中开始使用IronPrint

    arrow pointer

如何在C#中设置打印DPI?

Dpi上的属性接受任何正整数。 默认值为 300,这是商务文档的标准分辨率。 实际打印所用的DPI可能受物理打印机性能的限制——如果我们在最高支持 600DPI的打印机上设置 1200 DPI,打印机将使用其支持的最高分辨率。

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

// Configure 300 DPI for standard office quality
var officeSettings = new PrintSettings
{
    Dpi = 300
};

// Print the invoice
Printer.Print("invoice.pdf", officeSettings);
Imports IronPrint

' Configure 300 DPI for standard office quality
Dim officeSettings As New PrintSettings With {
    .Dpi = 300
}

' Print the invoice
Printer.Print("invoice.pdf", officeSettings)
$vbLabelText   $csharpLabel

使用本地.NET时,控制打印分辨率需要创建Graphics.DrawImage()手动渲染内容。 此内容包含 15–25 行标准代码。 IronPrint 将其简化为设置对象上的一个整数属性。

不同打印任务应使用多少 DPI?

选择合适的DPI取决于内容类型和用途。 分辨率越高并不一定越好——对于文字密集型文档,它会增加打印缓冲区大小和打印时间,却无法带来肉眼可见的改善。

DPI 最适合 备注
72–150 内部草稿、校样、测试打印 输出速度快,碳粉消耗低
300 商业文件、发票、报告 IronPrint 默认; 标准商业质量
600 营销材料、图表、图表 图像清晰度显著提升,细线呈现更细腻
1200+ 摄影、档案管理、美术 需要兼容的打印机; 大型打印缓冲文件

对于大多数应用场景,300DPI在质量与性能之间提供了最佳平衡。 建议从默认设置开始,仅当输出效果在图像清晰度或细节表现方面需要明显改善时,再适当提高设置。

如何将DPI与其他打印设置结合使用?

DPI与其他PrintSettings属性一起工作以定义一个完整的打印任务。 我们可以在同一个对象中配置纸张尺寸、方向、页边距、份数和灰度模式。

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

// Combine 600 DPI with landscape A4 and grayscale output
var settings = new PrintSettings
{
    Dpi = 600,
    PaperSize = PaperSize.A4,
    PaperOrientation = PaperOrientation.Landscape,
    PaperMargins = new Margins(10, 10, 10, 10),
    NumberOfCopies = 2,
    Grayscale = true
};

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

' Combine 600 DPI with landscape A4 and grayscale output
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
}

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

Grayscale = true设置为600 DPI时会产生尖锐的单色输出,适合图表和数据表。 PaperMargins值以毫米为单位。

如何让用户在打印对话框中调整 DPI?

当我们将Printer.ShowPrintDialog()时,打开的对话框会显示我们预设的DPI。 用户可以在打印前接受该设置或调整分辨率。

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

// Pre-configure 600 DPI for the dialog
var settings = new PrintSettings
{
    Dpi = 600,
    PaperSize = PaperSize.Letter
};

// Open the dialog with pre-selected DPI
Printer.ShowPrintDialog("design-proof.pdf", settings);
Imports IronPrint

' Pre-configure 600 DPI for the dialog
Dim settings As New PrintSettings With {
    .Dpi = 600,
    .PaperSize = PaperSize.Letter
}

' Open the dialog with pre-selected DPI
Printer.ShowPrintDialog("design-proof.pdf", settings)
$vbLabelText   $csharpLabel

对于非阻塞UI场景,Printer.ShowPrintDialogAsync()接受相同的参数并保持应用程序响应。对话框允许用户在打印前根据他们的打印机支持的分辨率验证DPI——在办公室600 DPI激光打印和1200 DPI照片打印机之间切换时非常有用。 对于不需要用户交互的全自动工作流,请使用Printer.Print()进行静默打印

下一步

PrintSettings对象上的DPI是单个整数——设置它以匹配每个打印任务的质量要求。 商业文档起始字数为 300,图文并茂的输出内容则需增加至 600 字或更多。

请查阅各可用属性的打印设置指南Printer 类 API 参考文档以了解完整的方法接口,以及代码示例页面获取可直接运行的代码片段。 IronPrint 教程详细介绍了完整的打印生命周期,变更日志则记录了最近的更新。

立即开始 30天试用,在实际项目中测试DPI设置。 准备好后,查看许可选项,起始于$999。

常见问题解答

打印中的DPI是什么?

DPI代表每英寸点数,指的是打印文档的分辨率。较高的DPI设置带来较高质量的打印。

如何使用IronPrint设置打印DPI?

您可以通过配置PrintSettings.Dpi属性来设置IronPrint中的打印DPI。默认值是300 DPI,但可以根据打印作业的具体需求进行调整。

IronPrint的默认DPI设置是多少?

IronPrint的默认DPI设置是300 DPI,适用于大多数标准打印作业。

为什么我需要调整DPI设置?

调整DPI设置允许您控制打印文档的分辨率和质量。对于高质量打印,您可能需要增加DPI,而较低的DPI设置可用于草稿或对细节要求较低的打印。

是否可以为不同的打印作业设置不同的DPI?

是的,IronPrint允许您为每个单独的打印作业调整DPI,提供灵活性以满足不同的打印需求。

如果我在IronPrint中设置了非常高的DPI会发生什么?

设置非常高的DPI可以提高打印质量,但也可能导致更大的文件大小和更长的处理时间。重要的是根据所需的质量和平衡性能要求来设置DPI。

我可以使用IronPrint打印高分辨率图像吗?

是的,IronPrint通过允许您调整DPI设置来支持高分辨率打印,确保您的图像以所需的清晰度和细节打印。

更改DPI会影响打印作业的文件大小吗?

是的,增加DPI可能导致更大的文件大小,因为渲染更高分辨率的打印需要更多数据。重要的是在打印质量和文件大小之间权衡。

标准文档的推荐DPI设置是多少?

对于标准文档,通常建议的DPI设置为300,因为它在打印质量和性能之间提供了良好的平衡。

IronPrint在管理打印质量方面如何帮助?

IronPrint提供工具来配置,例如DPI,允许用户根据特定需求定制打印文档的分辨率和质量。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
Nuget 下载 44,051 | 版本: 2026.7 刚刚发布
Still Scrolling Icon

还在滚动吗?

想快速获得证据? PM > Install-Package IronPrint
运行示例 观看您的文档打到打印机上。