如何在C#中打印为灰度

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

在打印机驱动程序级别,灰度打印将彩色文档转换为黑白输出。 这在大批量批次运行中可以节省彩色墨水或碳粉盒,保持内部草稿可读的同时,不浪费昂贵的耗材,并满足需要单色输出的格式要求。

IronPrint 将其简化为一个布尔值:将 PrintSettings.Grayscale 设置为 true,打印机便会输出黑白文档,无论原始文档的颜色如何。 下文将涵盖安装、基本用法、异步工作流以及组合设置。

快速入门:灰度打印

  1. 通过 NuGet 安装 IronPrint:Install-Package IronPrint
  2. 在文件中添加 using IronPrint;
  3. 创建一个 PrintSettings 对象
  4. Grayscale 设置为 true
  5. 将设置(包含文件路径)传递给 Printer.Print()
  1. 使用 NuGet 包管理器安装 https://www.nuget.org/packages/IronPrint

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

    using IronPrint;
    
    // Print in grayscale — one property, one line
    PrintSettings settings = new PrintSettings();
    settings.Grayscale = true;
    Printer.Print("report.pdf", settings);
  3. 部署到您的生产环境中进行测试

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

    arrow pointer

如何启用灰度以进行静默打印?

若要无需用户交互即可进行灰度打印,需启用 Grayscale 属性并将设置传递给 Printer.Print()

:path=/static-assets/print/content-code-examples/how-to/grayscale-printing/grayscale-printing-silent-grayscale.cs
using IronPrint;

// Configure grayscale output
PrintSettings settings = new PrintSettings
{
    Grayscale = true
};

// Print the color brochure as monochrome
Printer.Print("color-brochure.pdf", settings);
Imports IronPrint

' Configure grayscale output
Dim settings As New PrintSettings With {
    .Grayscale = True
}

' Print the color brochure as monochrome
Printer.Print("color-brochure.pdf", settings)
$vbLabelText   $csharpLabel

设置为 时,打印机驱动程序会在向页面喷墨或施加碳粉之前去除颜色信息。 原始文件保持不变——只有打印输出为单色。 这与在Windows打印对话框中手动选择"黑白"或"灰度"时的行为相同,只是我们可以以编程方式控制它,而无需任何用户交互。

默认值为,若未显式设置,则默认以全彩模式打印文档。

何时应该使用灰度打印?

灰度打印在多种常见情况下是正确的选择:

成本降低 - 彩色碳粉盒的费用明显高于黑色碳粉盒。 将面向内部的文档(草稿、时间表、内部备忘录)转换为灰度可以大大降低每页打印成本。

可读性 - 带有浅色文本或柔和背景的文档在纸面上可能难以阅读。 灰度转换通常会改善文本密集型内容的对比度和易读性。

合规性和档案 - 一些受监管的行业要求提交单色副本。 灰度输出满足此要求,而无需修改源文档。

对于颜色准确性至关重要的文档(如营销资料、品牌宣传材料、带颜色编码数据的图表),请将 保留为默认值

如何将灰度与其他打印设置结合?

`` 是 PrintSettings 上的一个属性。 我们可以将其与纸张边距、纸张大小、方向、DPI、副本数量打印机选择组合在一个配置对象中:

:path=/static-assets/print/content-code-examples/how-to/grayscale-printing/grayscale-printing-combined-settings.cs
using IronPrint;

// Configure grayscale draft printing
PrintSettings settings = new PrintSettings
{
    Grayscale = true,
    NumberOfCopies = 10,
    PaperSize = PaperSize.A4,
    PaperOrientation = PaperOrientation.Portrait,
    Dpi = 150,
    PaperMargins = new Margins(15),
    PrinterName = "Office Mono Laser"
};

// Print the team memo
Printer.Print("team-memo.pdf", settings);
Imports IronPrint

' Configure grayscale draft printing
Dim settings As New PrintSettings With {
    .Grayscale = True,
    .NumberOfCopies = 10,
    .PaperSize = PaperSize.A4,
    .PaperOrientation = PaperOrientation.Portrait,
    .Dpi = 150,
    .PaperMargins = New Margins(15),
    .PrinterName = "Office Mono Laser"
}

' Print the team memo
Printer.Print("team-memo.pdf", settings)
$vbLabelText   $csharpLabel

Grayscale = true 与较低的 DPI(如 )结合使用,可创建快速且经济的草稿打印配置,非常适合大量内部文档的打印。 对于非阻塞工作流,请将相同的 参数传递给 </a> 方法。

哪些文件格式支持灰度打印?

IronPrint支持库处理的每种文件格式的灰度输出:PDF, PNG, TIFF, GIF, JPEG, 和 BMP。 无论源格式如何,属性均以相同方式应用——我们传递相同的对象传递给 ``,无论打印的是 PDF 报告还是 JPEG 照片。

对于需要在打印之前将文件本身转换为灰度的PDF专用工作流,IronPDF的灰度渲染提供了这种能力。 相比之下,IronPrint 的 `` 属性会保留源文件的彩色显示,仅对打印输出产生影响。

我的下一个步骤是什么?

我们介绍了如何通过 PrintSettings.Grayscale = true 启用灰度打印,演示了无交互式和异步灰度工作流,探讨了何时适合使用单色输出,结合灰度与其他设置实现草稿质量的批量打印,并确认了所有兼容 IronPrint 的文件类型均支持该格式。

欲了解更多信息,请探索以下资源:

获取免费试用许可证,在真实环境中测试所有功能;或准备部署时查看授权选项

常见问题解答

什么是 IronPrint .NET?

IronPrint .NET 是一个允许开发人员在C#应用程序中管理打印任务的库,支持灰度打印、无声打印和异步操作等功能。

如何使用 IronPrint 打印灰度文档?

要在 C# 中使用 IronPrint 打印灰度文档,可以设置 PrintSettings 属性以启用单色输出,这有助于减少打印成本。

灰度打印有什么好处?

灰度打印减少了墨水或碳粉的使用,从而节省成本,适用于不需要颜色的文档。

我可以使用IronPrint进行静默打印吗?

是的,IronPrint 支持无声打印,允许文档在没有任何打印对话框显示的情况下打印,非常适合自动化工作流程。

IronPrint 支持异步打印吗?

IronPrint 支持异步打印,启用了非阻塞操作,改善了应用程序在进行打印任务时的性能。

如何结合使用 IronPrint 进行打印的设置?

IronPrint 允许您通过在C#代码中相应地配置 PrintSettings 对象,结合使用灰度模式和无声打印等设置。

IronPrint 适合用于成本效益的打印解决方案吗?

是的,IronPrint 通过提供灰度打印和高效资源管理等功能,设计用于提供成本效益的打印解决方案。

IronPrint 使用哪种编程语言?

IronPrint 与C#编程语言一起使用,允许开发人员将高级打印功能集成到其 .NET 应用程序中。

IronPrint 可以用于批量打印任务吗?

IronPrint 可以用于批量打印任务,允许开发人员高效地自动化多个文档的打印过程。

哪些类型的应用程序可以利用 IronPrint?

需要强大打印功能的应用程序,例如文档管理系统、报告工具和自动化工作流程,可以大大受益于 IronPrint。

Curtis Chau
技术作家

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

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

准备开始了吗?
Nuget 下载 41,154 | 版本: 2026.5 just released
Still Scrolling Icon

还在滚动吗?

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