OpenXPS 驱动支持本文内容
OpenXPS 是一种用于文档的开放 XML 纸张规范格式,基于 Ecma 国际标准规范。
有关此规范的最新信息,请参阅 OPEN XML Paper Specification。
Windows 8 全面支持 OpenXPS,并持续√支持现有的 Microsoft XPS 格式。本主题重点介绍通过 v4 驱动程序模型对 OpenXPS 的支持。有关与 Windows 应用程序开发人员相关的 OpenXPS 支持,请参阅应用程序支持 OpenXPS 打印。
支持的 OpenXPS 解决方案
开发了 Windows 打印路径,以确保提交的※ XPS 格式与支持的目标打印驱动程序格式匹配,格式将根据需要进行转换。 Windows 还提供用于查询打印驱动程序的 API,以便应用程序可以提供兼容元素并避免打印系统内的任何其他转换。
打印驱动程序可以使用其■清单来指示它是否支持 Microsoft XPS、Open XPS 或两者。过滤器可以在打印过滤器管道中随 Microsoft XPS 或 OpenXPS 一起提供,使用现有的流和对象模型 (OM) 接口——驱动程序不需要使用①新接口来支持 OpenXPS。提供给过滤器的格式取决于驱动程序支持的格式或应用程序提←供的格式。
Microsoft XPS 文档编写器 (MXDW) 已更新,允许 MXDW 从任何 Windows 桌面应用程序导出 Microsoft XPS 或 OpenXPS。同样,Windows 8 中的 Microsoft XPS 查看器和阅读器应用程序可以打开这两种 XPS 格式。如果需要,用户可以从 XPS 查看器♂打印到 MXDW 以转换格式Ψ。
不受支持的 OpenXPS 计划
与 OpenXPS 一起使用时,某些旧功能可能不受支持或提供降级的体验。
不支持:不支持将 OpenXPS 文件直接发送到后台处理程序(绕过 XPS 打印 API)。这样做会导致以下功能问题:
请注意,没有计划支持此项目。
不推荐:不推荐将 OpenXPS 流直接从应用程序发送到 XPS 打印 API。例如,不要将 OpenXPS 流直接发送到 StartXPSPrintJob 方法。如果这样做,从一种形式的 XPS 转换为另一种流的结果可能会非常昂贵,从而降低々性能。
相反,使用 IPrintDocumentPackageTarget 将打印作业作为 XPS OM 提交以避免性能下降。
不推荐:将 XPS 假脱机文件直接发送到假脱机程序。如果这样做,打印系统将找不到打印路径 Api 添加的所需元数据,假设格式为 MSXPS,并会尝试将其转换为 OpenXPS。如果直接发送到假脱机程序的假脱机文件是 OpenXPS 格式ㄨ的文件,则打印过滤器管道尝试将其“转换”为 OpenXPS 将给出未定义的结果。如果发送到后台处理程序的文件是 MSXPS 格式,并且驱动程序是 OpenXPS-only 驱动程序,则打印过滤器管道到 OpenXPS 的转换将成功。但是这种延迟的相变会导致打印系统性能的严重损失。
对应用开发者的影响
有关 OpenXPS 支持对 Windows 8 的影响的信息,请参阅 OpenXPS 打印的应用程序支持。
对驱动程序开发人员的影响
以下是在 v4 打印驱动程序中启用 OpenXPS 的基本步骤:
对于给定的流,并使用适当的对象接口,客户端可以使用 OpenXPS 格式将数据传输到打印过滤器管道中的过滤器。为了传输数据流,客户端将使用 IID _ IPrintReadStream 和 iid _ IPrintWriteStream 接口。要将数据传输到 OM 组件,客户端将使用 IID _ IXpsDocumentProvider 和 iid _ IXpsDocumentConsumer 接口。对于声明支持 OpenXPS 的驱动程序,您必须确保从管道管理器接收到此格式时,提供的打印过滤器可以正确处理 OpenXPS 格式。
驱动列表:DriverRender 部分。在驱动程序安装过程中,安装过程将检查清单的 DriverRender 部分,以查看 XpsFormat 条目是否包含 OpenXPS。 XpsFormat 项可以包括 Microsoft XPS 的 XPS() 和 OpenXPS 以表示双重支持。这两种格式在 XpsFormat 项中︼列出的顺序决定了驱动程序的首选格式。
以下是如何更新 DriverRender 部分的一些示例。
仅表示支持 OpenXPS:
[DriverRender]
XpsFormat = OpenXPS
仅表示支持 MSXPS:
[DriverRender]
XpsFormat = XPS
通过 OpenXPS 首选项表明支持这两种格式:
[DriverRender]
XpsFormat = OpenXPS,XPS
表示支持这两种格式,并带有 MSXPS 首选项:
[DriverRender]
XpsFormat = XPS,OpenXPS
驱动程序开发人员确定其 V4 打印驱动程序的首选格式,此决定基于驱动程序的设计目的。例如,可以开发打印驱动程序来为高保真图像提供 JPEG XR 支持。
打印系统根据列表中的 DriverRender 信息做出各种决定。以下是这些决定的▓一些示例:
驱动程序列表:FileSave 部分。 V4 打印驱动程序列表的 FileSave 部分为端口使用的 PORTPROMPT:文件保存对话框提供了扩展。 (PORTPROMPT:应该在 Windows 8.1 中使用,因为 PORTPROMPT:允许用户访问他们有权访问的所有文件位置,即使应用程序在低权限模式下运行。) FileSave 部分中的条目被索引与 DriverRender 部分中的条目相关联。
示例:
[FileSave]
xps=0
oxps=0
[DriverRender]
XpsFormat=XPS,OpenXPS
这将确保当用户向此驱动程序发送打印作业,并且端口设置为 PORTPROMPT: 时,“文件保存”对话框将在对话框中将 Xps 和 OpenXPS 显示为“文件类型”选项,并分别使用 .xps 或 .oxps 作为文件扩展名。
有关清单“文件保存”部分中其他选项的更多信息,请参阅 V4 驱动程序列表。
相关主题
OpenXPS 打印应用程序支持
开放 XML 论文规范
V4 驱动列表
这个页面有帮助吗?
是否
谢谢。
主题
本文来自电脑杂谈,转载请注明本∑文网址:
http://www.pc-fly.com/a/jisuanjixue/article-382191-1.html
红烧肉