Метод IWICDdsDecoder::GetFrame (wincodec.h)
Извлекает указанный кадр изображения DDS.
Синтаксис
HRESULT GetFrame(
[in] UINT arrayIndex,
[in] UINT mipLevel,
[in] UINT sliceIndex,
[out] IWICBitmapFrameDecode **ppIBitmapFrame
);
Параметры
[in] arrayIndex
Тип: UINT
Запрошенный индекс в массиве текстур.
[in] mipLevel
Тип: UINT
Запрошенный уровень MIP.
[in] sliceIndex
Тип: UINT
Запрошенный срез в трехмерной текстуре.
[out] ppIBitmapFrame
Тип: IWICBitmapFrameDecode**
Указатель на объект IWICBitmapFrameDecode .
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
DDS-файл может содержать несколько образов, упорядоченных в трехуровневую иерархию. Во-первых, файл DDS может содержать несколько текстур в массиве текстур. Во-вторых, каждая текстура может иметь несколько уровней MIP. Наконец, текстура может быть трехмерной (объемной) текстурой и иметь несколько срезов, каждый из которых является двухd текстурой. Дополнительные сведения см. в документации по DDS .
WIC сопоставляет эту трехуровневую иерархию с линейным массивом IWICBitmapFrameDecode, доступным через IWICBitmapDecoder::GetFrame. Однако определение того, какой кадр соответствует триаде значений arrayIndex, mipLevel и sliceIndex , не является тривиальным, так как каждый уровень MIP трехмерной текстуры имеет разную глубину (количество срезов). Этот метод обеспечивает дополнительное удобство по сравнению с IWICBitmapDecoder::GetFrame для изображений DDS, вычисляя правильный кадр с учетом трех индексов.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8.1 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2012 R2 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | wincodec.h |
Библиотека | Windowscodecs.lib |
DLL | Windowscodecs.dll |