XPSDrv 渲染器模块

重要

建议使用 Microsoft 的 IPP 收件箱类驱动程序,以及 Print Support Apps (PSA) ,在 Windows 10 和 11 中自定义打印体验,以便进行打印机设备开发。

有关详细信息,请参阅 打印支持应用设计指南

XPSDrv 打印机驱动程序的呈现模块包含用于呈现 XPS 假脱机文件的内容以输出到打印机的筛选器。 驱动程序的呈现筛选器集在筛选器管道中实例化并运行。 筛选器管道管理器 (FPM) 管理筛选器,Inter-Filter Communicator (IFC) 控制筛选器之间的交互。

下图显示了一个筛选器管道。

说明筛选器管道的示意图。

Microsoft 提供以下 XPS 驱动程序组件:

  • 筛选器管道管理器

  • Inter-Filter Communicator

  • 属性包

筛选器管道管理器必须:

  1. 加载和初始化筛选器。

  2. 管理筛选器之间的数据。

  3. 打印作业完成后卸载筛选器。

Inter-Filter Communicators 管理筛选器之间的数据传输,筛选器管道管理器管理Inter-Filter Communicators。

以下过程描述管道中的一组筛选器会发生什么情况:

  1. 筛选器管道管理器 (FPC) 文件读取筛选器管道配置。

  2. 加载 FPC 指定的筛选器。

  3. 筛选器管道已初始化,筛选器管道管理器启动筛选器管道。

  4. 管道中的第一个筛选器通过筛选器管道管理器提供的 XPS 或流接口读取 XPS 数据,然后筛选器处理内容。

  5. 第一个筛选器使用 Inter-Filter Communicator 提供的接口将已处理的 XPS 数据发送到第二个筛选器。

  6. Inter-Filter Communicator 维护中间处理结果,直到第二个筛选器准备就绪。

  7. 步骤 1-6 从筛选器重复到筛选器,直到最后一个筛选器的结果发送到驱动程序为输出定义的端口。

如果打印机使用 XPS 作为页面描述语言 (PDL) ,并且不需要其他处理,则可以使用空 (“传递”) 管道。 如果 XPS 不是打印机的 PDL,则需要编写将 XPS 转换为打印机 PDL 的筛选器,以及所需的任何其他处理。

若要开发 XPS 驱动程序,必须创建以下组件:

还可以向 XPSDrv 呈现模块添加打印票证支持