ITranscodeImage::TranscodeImage 方法 (imagetranscode.h)

将图像转换为 JPEG 或位图 (BMP) 图像格式。

语法

HRESULT TranscodeImage(
  [in]            IShellItem *pShellItem,
                  UINT       uiMaxWidth,
                  UINT       uiMaxHeight,
                  DWORD      flags,
                  IStream    *pvImage,
  [out, optional] UINT       *puiWidth,
  [out, optional] UINT       *puiHeight
);

parameters

[in] pShellItem

类型: IShellItem*

要转换的图像的 Shell 项。

uiMaxWidth

类型: UINT

请求的高度(以像素为单位)。 应小于或等于原始图像的实际高度。 请参阅“备注”。

uiMaxHeight

类型: UINT

请求的宽度(以像素为单位)。 应小于或等于原始图像的实际宽度。 请参阅“备注”。

flags

类型: TI_FLAGS

以下标志之一。

TI_BITMAP

将图像转换为 BMP 格式。

TI_JPEG

将图像转换为 JPEG 格式。

pvImage

类型: IStream*

用于接收转换后的图像的流。 在调用 TranscodeImage 之前,必须由调用代码创建流。

[out, optional] puiWidth

类型: UINT*

转换后的图像的实际宽度。

[out, optional] puiHeight

类型: UINT*

转换后的图像的实际高度。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

保留原始图像的纵横比。 调整新图像的大小,使其适合一个包含宽度 uiMaxWidth 和高度 uiMaxHeight 的框。

如果原始图像已适合此边界框,则不会更改图像大小。

如果 uiMaxWidth 和 uiMaxHeight 均为零,则返回的图像大小将与原始图像大小相同。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 imagetranscode.h