重要
新式打印平台是 Windows 与打印机通信的首选方式。 建议使用 Microsoft 的 IPP 收件箱类驱动程序以及打印支持应用 (PSA) 来自定义 Windows 10 和 11 中的打印体验,以便进行打印机设备开发。
有关详细信息,请参阅 打印支持应用设计指南。
打印作业由应用程序通过调用 Microsoft Win32 GDI 或 Windows Presentation Foundation (WPF) 函数创建。 Win32 函数会将应用程序数据作为 EMF 记录进行后台处理,以供 EMF 打印处理器稍后播放,或者可以立即呈现每个文档页面的可打印图像。 WPF 函数将应用程序数据作为 XPS 后台处理文件进行后台处理。
打印任务单和打印能力技术用于传达打印机设置,以提高打印机和应用程序之间的兼容性。
无论是立即执行还是在打印处理期间执行,图像呈现均在打印驱动程序中执行:
基于 GDI 的打印机驱动程序在从后台处理文件播放 EMF 记录期间执行图像呈现,并由 GDI 呈现引擎控制。 在呈现作期间,GDI 呈现引擎调用相应的打印机驱动程序以获取帮助。
XPSDrv 打印驱动程序使用一系列处理筛选器来处理 XPS 后台处理文件内容,以便输出到打印机。
基于 GDI 的打印机驱动程序必须:
通过提供 GDI 无法支持的特定于打印机的绘图功能,帮助 GDI 呈现打印作业。
将呈现的图像数据流发送到打印后台处理程序。
提供与打印机和打印文档关联的可修改配置参数的用户界面,例如选择输入和输出托盘、份数、图像分辨率和方向等。
XPSDrv 打印机驱动程序与基于 GDI 的驱动程序具有相同的用户界面责任,并且还负责处理打印作业数据和将数据发送给打印机。 但是,XPSDrv 打印机驱动程序不需要使用 GDI 来呈现打印机的页面图像。
打印机驱动程序由一组 打印机驱动程序组件 组成,将驱动程序的绘图和用户界面作划分为单独的 DLL。 XPSDrv 打印机驱动程序还由将配置和绘图和呈现函数划分为单独的对象的组件组成。
本部分旨在帮助你了解作系统支持的不同类型的打印机驱动程序,但还应记住,以下三个打印机驱动程序随作系统一起提供:
Microsoft 通用打印机驱动程序
Microsoft PostScript 打印机驱动程序
Microsoft 绘图仪驱动程序
这三个驱动程序支持最终用户可以立即购买的大多数打印设备。 仅当打印设备与相应的 Microsoft 提供的驱动程序不兼容时,才需要编写打印机驱动程序。 只需将打印机数据文件添加到 Microsoft 提供的驱动程序之一,即可支持大多数新打印机。 可能需要新驱动程序的设备包括包含由专有命令序列控制的硬件绘图加速器的驱动程序。
本部分包含以下介绍 Windows 打印体系结构的主题。
XPSDrv 打印机驱动程序
GDI 打印机驱动程序
打印票证和打印功能技术
编写 64 位打印机驱动程序