重要
从 Windows 11 SDK(22000.1 版)开始,打印支持应用(PSA)是开发适用于打印机的 UWP 应用的建议方法。 有关将 PSA 与打印设备配合使用的详细信息,请参阅 “打印支持应用设计指南 ”和 “打印支持应用关联 ”主题。
以下部分介绍支持 v4 打印驱动程序模型的打印机的 UWP 设备应用。 UWP 设备应用可以通过自定义打印设置浮出控件和通知支持来突出显示打印机的特殊功能。 UWP 设备应用还可以显示打印机状态、管理打印作业和执行打印机维护任务。 若要了解有关 UWP 设备应用的一般详细信息,请参阅 UWP 设备应用简介。
若要使用以下主题中讨论的 UWP 设备应用功能,打印机必须支持 v4 打印驱动程序模型。 有关详细信息,请参阅 开发 v4 打印驱动程序。
本部分内容
| 主题 | DESCRIPTION |
|---|---|
| 如何显示打印机状态 | 本主题使用 打印设置和打印通知 示例的 C# 版本来演示如何查询打印机状态并显示它。 |
| 如何自定义打印设置 | 本主题介绍高级打印设置浮出控件,并说明 打印设置的 C# 版本和打印通知 示例如何将默认浮出控件替换为自定义浮出控件。 |
| 使用打印通知 | 本主题介绍打印通知,并说明 打印设置和打印通知 示例的 C# 版本如何使用后台任务来响应打印通知。 后台任务演示如何在本地应用数据存储中保存通知详细信息、发送 toast 通知,以及更新磁贴和徽章。 |
| 如何管理打印作业 | 在 Windows 8.1 中,打印机的 UWP 设备应用可以管理打印作业。 本主题使用 打印作业管理和打印机维护 示例的 C# 版本来演示如何创建打印作业视图、监视这些作业,并在必要时取消作业。 |
| 如何执行打印机维护 | 在 Windows 8.1 中,UWP 设备应用可以执行打印机维护,例如对齐打印头和清洁喷头。 本主题使用 打印作业管理和打印机维护 示例的 C# 版本来演示如何使用双向通信(Bidi)来执行此类设备维护。 |
| 打印机扩展库概述 | 本主题介绍打印机扩展库,该库可帮助设备制造商为其打印机编写 UWP 设备应用。 |
适用于打印机的 UWP 设备应用的使用方案
如果您想要为打印机使用UWP设备应用程序,可以这样做:
突出显示高级设备功能,例如每页打印多张照片。
提出特定于设备的建议。 例如,可以使用设备应用来显示图像管理选项,或提供设置和保存特定于打印机的默认设置的方法。
一般建议
调用 window.print()后,在 onClick 事件处理程序中检查并处理应用的“打印”按钮的错误消息。 这允许你的应用中止打印请求(例如,如果没有打印机可用)。
如果打印失败,请通知用户,如果可能,请解释失败的原因。
如果计划自定义打印体验,请将此代码分成打印配套应用。 这样,就可以组件化代码并简化测试和调试过程。
不要尝试自定义打印体验以使用 V3 打印驱动程序。
不要在自定义的打印界面中宣传打印设备的配件。
不要显示与调用 Microsoft 应用商店设备应用的原因无关的待售商品。 例如,当用户单击通知提示墨水不足后,展示可购买的打印墨盒是相关的。 但是,在这种情况下,也不适合尝试销售打印线或照片打印工具包。
不要将用户重定向到公司的网站,以便进行更多的产品销售。
不要显示与设置打印首选项任务无关的信息。 例如,不要提供有关如何清理打印头或如何对齐和测试打印喷嘴的信息。
示例
打印机的 UWP 设备应用示例演示了可在自己的 UWP 设备应用中实现的打印机相关功能。 每个示例还包括 PrinterExtensionLibrary 项目,你可以在自己的应用中重复使用,以帮助使用打印机扩展。 打印机扩展库封装 v4 打印驱动程序的 打印机扩展接口 的 COM 实现。
Windows 8 示例
打印作业管理和打印机维护示例演示如何使用双向通信(Bidi)管理打印作业和执行打印机维护任务。
打印设置和打印通知示例演示如何创建一个 UWP 设备应用,该应用为高级打印设置提供自定义浮出控件、可显示打印机状态,并且可以在磁贴或 Toast 中显示打印机通知。
Windows 10 示例
- 编写打印工作流应用并将 WSDA 迁移到 UWP 示例演示了 OEM 打印合作伙伴如何使用打印工作流功能并将其现有的 Windows 应用商店设备应用(WSDA)代码迁移到通用 Windows 平台。