IWICDdsFrameDecode::GetSizeInBlocks 方法 (wincodec.h)

获取 DDS 图像的宽度和高度(以块为单位)。

语法

HRESULT GetSizeInBlocks(
  [out] UINT *pWidthInBlocks,
  [out] UINT *pHeightInBlocks
);

参数

[out] pWidthInBlocks

类型: UINT*

DDS 图像的宽度(以块为单位)。

[out] pHeightInBlocks

类型: UINT*

DDS 图像的高度(以块为单位)。

返回值

类型: HRESULT

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

注解

对于块压缩纹理,返回的宽度和高度值不会完全定义纹理大小,因为图像已填充以适应最接近的整个块大小。 例如,像素尺寸为 1x1、2x2 和 4x4 的三个 BC1 纹理将全部报告 pWidthInBlocks = 1,pHeightInBlocks = 1。

如果纹理不使用块压缩 DXGI_FORMAT,则此方法返回以像素为单位的纹理大小;对于这些格式, IWICDdsFrameDecoder::GetFormatInfo 返回的块大小为 1x1。

要求

要求
最低受支持的客户端 Windows 8.1 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2012 R2 [桌面应用 |UWP 应用]
目标平台 Windows
标头 wincodec.h
Library Windowscodecs.lib
DLL Windowscodecs.dll

另请参阅

IWICDdsFrameDecode