IPrintOemUIMXDC::AdjustImageCompression 方法 (prcomoem.h)

方法 IPrintOemUIMXDC::AdjustImageCompression 允许 XPS 筛选器管道驱动程序使用 UnidrvUI.dll 或 PS5UI.dll 来支持 JPEG 或 PNG 映像的压缩级别配置。

语法

HRESULT AdjustImageCompression(
  HANDLE         hPrinter,
  DWORD          cbDevMode,
  const PDEVMODE pDevMode,
  DWORD          cbOEMDM,
  const PVOID    pOEMDM,
  PLONG          pCompressionMode
);

参数

hPrinter

当前正在查询的打印机的句柄。

cbDevMode

DEVMODE 结构的大小,包括追加的数据。

pDevMode

指向包含当前设备设置的 DEVMODE 结构的指针。

cbOEMDM

DEVMODE 结构的供应商提供的部分中的字节数。

pOEMDM

指向 pDevMode 指向的 DEVMODE 结构的供应商部分中包含的数据的指针。

pCompressionMode

指向当前压缩级别的指针。 pCompressionMode 是在 Mxdc.h 中指定的枚举类型。

返回值

AdjustImageCompression 如果方法成功,则返回S_OK。 否则,如果插件不支持 方法,此方法应返回E_NOTIMPL;如果插件无法完成操作,则返回任何适当的失败值。 有关更多信息,请参见下面的“备注”部分。

注解

方法 IPrintOemUIMXDC::AdjustImageCompression 影响由 Microsoft XPS 文档转换器 (MXDC) 生成的 JPEG 和 PNG 图像。 方法IPrintOemUIMXDC::AdjustImageCompression不会影响应用程序通过 GDI JPEG/PNG 图像直通机制直接发送到 GDI 的 JPEG 和 PNG 映像 (BMF_JPEG,BMF_PNG) 。

核心驱动程序(UnidrvUI.dll 和 PS5UI.dll)不会修改映像压缩设置。 但是,该插件可以更改最初由 GDI 打印路径提供给 MXDC 的值。

pCompressionMode 参数具有以下预定义值之一。

ENUM 类型 含义
MXDC_IMAGETYPE_JPEGHIGH_COMPRESSION 1 最低质量和最小文件大小
MXDC_IMAGETYPE_JPEGMEDIUM_COMPRESSION 2 中等质量和中等文件大小
MXDC_IMAGETYPE_JPEGLOW_COMPRESSION 3 高质量和大文件大小
MXDC_IMAGETYPE_PNG 4 最高质量和最大文件大小
 

pCompressionMode 参数为 IN OUT。 此函数的所有其他参数仅为输入。

如果插件无法完成操作,应返回相应的故障 HRESULT,这会导致当前打印作业失败。

要求

要求
最低受支持的客户端 适用于 Windows Vista 以及可再发行的 Unidrvui.dll 和 Ps5ui.dll 的更高版本。 如果已安装 XPS Essentials Pack,此方法也适用于 Microsoft Windows XP 中的 XPSDrv 驱动程序。
目标平台 桌面
标头 prcomoem.h (包括 Prcomoem.h)