ATTRIBUTE_INFO_3 结构 (winsplp.h)
ATTRIBUTE_INFO_3 结构用作打印机接口 DLL 的 DrvQueryJobAttributes 函数的参数。 所有成员值都是函数提供的。
语法
typedef struct _ATTRIBUTE_INFO_3 {
DWORD dwJobNumberOfPagesPerSide;
DWORD dwDrvNumberOfPagesPerSide;
DWORD dwNupBorderFlags;
DWORD dwJobPageOrderFlags;
DWORD dwDrvPageOrderFlags;
DWORD dwJobNumberOfCopies;
DWORD dwDrvNumberOfCopies;
DWORD dwColorOptimization;
short dmPrintQuality;
short dmYResolution;
} ATTRIBUTE_INFO_3, *PATTRIBUTE_INFO_3;
成员
dwJobNumberOfPagesPerSide
要根据用户请求放置在物理页面一侧的文档页数。 允许的值为 1、2、4、6、9 或 16。
dwDrvNumberOfPagesPerSide
打印机和驱动程序可以放置在物理页面一侧的文档页数。 此值必须为 1 或为 dwJobNumberOfPagesPerSide 指定的值。
dwNupBorderFlags
以下位标志值之一:
标志 | 定义 |
---|---|
BORDER_PRINT | 打印处理器应在页面周围绘制边框。 |
NO_BORDER_PRINT | 打印处理器不应在页面周围绘制边框。 |
dwJobPageOrderFlags
以下位标志值之一:
标志 | 定义 |
---|---|
BOOKLET_PRINT | 页面应以小册子形式打印,在物理页面的一侧打印两个文档页。 在横向模式下,两个文档页在纸张上并排打印。 在纵向模式下,两个文档页从上到下打印。 |
NORMAL_PRINT | 页面应按正常顺序打印:第 1 页、第 2 页等。 |
REVERSE_PRINT | 页面应按相反顺序打印:最后一页、下一页等。 |
dwDrvPageOrderFlags
指示打印机和驱动程序支持哪些页面排序选项的位标志。 使用与 dwJobPageOrderFlags 相同的标志。
dwJobNumberOfCopies
根据用户的请求打印作业的副本数。
dwDrvNumberOfCopies
考虑到整理和装订等作业属性,打印机和驱动程序一次可以处理的最大副本数。
dwColorOptimization
以下位标志值之一:
标志 | 定义 |
---|---|
COLOR_OPTIMIZATION | 打印处理器应使用单色颜色优化。 |
NO_COLOR_OPTIMIZATION | 打印处理器不应使用单色颜色优化。 |
dmPrintQuality
如果要使用的值,而不是打印作业的 DEVMODEW 结构的 dmPrintQuality 成员,前提是在 dwColorOptimization 中设置了COLOR_OPTIMIZATION标志。
dmYResolution
如果要使用的值,而不是打印作业的 DEVMODEW 结构的 dmYResolution 成员,前提是在 dwColorOptimization 中设置了COLOR_OPTIMIZATION标志。
注解
如果打印作业的 DEVMODEW 结构的 dmPrintQuality 成员为负值(例如DMRES_HIGH),并且启用了单色颜色优化,则在颜色和单色之间切换可能会导致使用不同的分辨率。 这是因为DMRES_HIGH可能会分配给颜色和单色呈现的不同 DPI 值。 (对于 Unidrv 支持的设备,此分配发生在打印机的 GPD 文件中。) 为了确保整个打印作业的分辨率一致,驱动程序可以指定正 dmPrintQuality 和 dmYResolution 值, (表示特定 DPI 分辨率) 替代等效 的 DEVMODEW 值。
EMF 打印处理器使用为 dwColorOptimization 指定的标志确定是否请求 GDI 执行单色颜色优化。 如果启用了单色颜色优化,则可以根据需要在单色和颜色呈现之间切换打印作业。
如果要创建 Unidrv 呈现插件来生成颜色水印,请注意,当 dwColorOptimization 成员设置为COLOR_OPTIMIZATION时,当在黑白文档中打印颜色水印时,颜色水印以黑白打印。 若要确保颜色水印正确打印彩色和黑白文档,请禁用颜色优化。 颜色优化还可以由 Unidrv *ChangeColorModeOnDoc? 颜色属性控制, (请参阅 颜色属性) ,并由 GdiEndPageEMF 函数控制。
有关其他ATTRIBUTE_INFO_3结构成员的信息,请参阅 ATTRIBUTE_INFO_1 和 ATTRIBUTE_INFO_2。
要求
要求 | 值 |
---|---|
Header | winsplp.h (包括 Winddiui.h、Winsplp.h) |