Aspose.Words 文档打印机 for .NET
NET 的 Aspose.Words 文档打印机 允许开发人员直接向印刷机(本地或网络)发送文件,而无需显示用户界面.
安装和设置
支持的平台
- 操作系统:Windows、Linux、MacOS
- 框架: .NET Framework 4.x , .Net Core , 网 5 / 6 + , Mono
- IDEs: Visual Studio 2010–2022, Xamarin, MonoDevelop
快速启动:打印一个Word文档
using Aspose.Words;
using System.Drawing.Printing;
var doc = new Document("Document.docx");
// Select a printer
string printerName = PrinterSettings.InstalledPrinters[0].ToString();
// Print silently
doc.Print(printerName);
此示例将文档印刷到第一台可用的打印机,无需接口插图.
特性和功能性
支持的格式
所有由 Aspose.Words 支持的格式都可以直接打印: DOCX, DOC, RTF, PDF, HTML/MHTML, ODT, EPUB, TXT, Markdown, 图像等.
打印机选择与配置
- 按名称选择任何安装的打印机,或返回系统默认.
- 控制 ** 纸张大小、打印机带、双重模式、导向和印刷质量** 通过
PrinterSettings
. - 兼容本地和网络打印机.
安静、UI免费打印
- 连接到 .NET
StandardPrintController
抑制对话. - 非常适合 ** 无头服务器、背景服务和 ASP.NET 应用程序**.
- 防止UI在意想不到的工作流中阻止.
页面范围和复制控制
- 打印所有页面或特定范围.
- 支持 odd/even 页面、多份副本和 collation.
- 与 .NET 打印 API 完全集成.
页面设置和配置
- 调整边界、方向(肖像/地图),并在发送前规模.
- 动态调整页面设置与模板,而不改变源内容.
Duplex 和 Collation
- 允许 双侧打印 (长层或短层连接).
- Fine-tune collation 和 stapling 选项,取决于硬件.
Batch 和 Async 打印
- 在一个程序中查找多个文件.
- 运行无同步工作,而不阻止主条线.
- 通过事件/通话跟踪状态,并转载通道.
错误处理和登录
- 检测打印机错误(纸质漏洞、离线状态、外纸).
- 与登录框架集成,以捕获工作诊断:打印机名称、文档名单、错误代码.
示例:用Duplex打印特定页面
using Aspose.Words;
using System.Drawing.Printing;
var doc = new Document("Report.pdf");
var settings = new PrinterSettings
{
PrinterName = "HP LaserJet",
FromPage = 1,
ToPage = 5,
Copies = 2,
Duplex = Duplex.Vertical
};
// Print silently with defined settings
doc.Print(settings);
常见用例
- 自动报告: 打印账单、合同和服务器页面报告.
- Batch 工作流: 生产线上的字符标签、门票或标志.
- 沉默的背景工作: 集成需要未经预期打印的服务.
最佳实践
- 重复使用单一
PrinterSettings
重复工作的反对. - 在发送包之前验证打印机可用性.
- 应用退出逻辑可恢复的打印机错误.
- 将文档数据保持在内存(流或SSD)中,以便更快的打印周期.
- Align default 文档模板与打印机默认(纸张大小、边缘).
- 始终提前确认许可设置,以防止水标或序列限制.
FAQ
**这需要Microsoft Office或Acrobat吗?**No. Printing 由 Aspose.Words 发布引擎和 .NET 打印 API 驱动.
**我可以直接打印PDF吗?**是的. PDF 原生支持.
**我只能打印所选择的页面吗?**是的,使用 PrinterSettings.FromPage
/ ToPage
或 PageRange
对象.
**我能跟踪工作状态吗?**是的,订阅打印事件并在日志中捕获工作诊断.
**这是安全的吗?**是的,每一个 Document
例子可以在不同线上同时打印.