本主题不是最新主题。 有关最新信息,请参阅 打印架构规范。
除了正确评分包含 ParameterRef 实例的选项 (请参阅 引用参数) ,PrintCapabilities 或 PrintTicket 提供程序和客户端必须准备好处理涉及参数的以下情况。
用户界面 (UI) 客户端必须提示用户在适当时间为指定参数) ParameterInit 元素提供参数初始值设定项 (值,以便将适当的 ParameterInit 元素插入 PrintTicket 中。 UI 客户端必须能够区分两种类型的参数(无条件必需和有条件强制),并且必须能够正确处理每种类型。 对于无条件必需的参数,UI 必须确保为此类参数提供 ParameterInit 元素。 对于有条件的必需参数,如果参数由 PrintTicket 中选择的选项引用,则 UI 必须提供 ParameterInit 值。 参数的必需状态在 ParameterDef 实例中指定。 有关详细信息,请参阅 ParameterDef 和 ParameterInit Elements。 UI 客户端应验证用户提供的 ParameterInit 值,以验证它们是否满足 ParameterDef 实例中指定的要求。
PrintTicket 提供程序还应检查 PrintTicket 提供的 ParameterInit 实例,以验证所有所需的参数都存在,以及它们是否满足 ParameterDef 实例中指定的要求。 如果 ParameterInit 值无效或缺失,验证代码应提供合理的默认值。 请注意,ParameterDef 允许为此提供默认值。 此外,如果存在涉及参数的约束,例如,“如果 CopyCount 大于 N,则不要使用小容量输入箱”,PrintTicket 验证代码应检测此约束并修改 PrintTicket 以避免激活约束。
如果 PrintCapabilities 对 PrintTicket 中指定的参数有任何依赖项,PrintCapabilities 提供程序必须监视 ParameterInit 值并生成相应的 PrintCapabilities 文档。
相关主题