IWICJpegFrameDecode::SetIndexing 方法 (wincodec.h)

启用 JPEG 的索引编制,以便进行高效的随机访问。

语法

HRESULT SetIndexing(
  WICJpegIndexingOptions options,
  UINT                   horizontalIntervalSize
);

参数

options

类型: WICJpegIndexingOptions

一个 值,该值指定是应立即生成索引还是推迟到将来调用 IWICBitmapSource::CopyPixels

horizontalIntervalSize

类型: UINT

索引的粒度(以像素为单位)。

返回值

类型: HRESULT

成功完成后返回S_OK。

注解

此方法允许以牺牲内存使用量为代价高效随机访问图像像素。 索引所需的内存量取决于请求的索引粒度。 除非调用 SetIndexing ,否则在调用 IWICBitmapSource::CopyPixels 期间,通过自上而下地浏览 JPEG 的像素来访问 JPEG 的效率要高得多。

如果文件不支持索引,此方法将失败。 应调用 IWICJpegFrameDecode::D oesSupportIndexing 以首先确定是否支持索引编制。 如果多次调用此方法,则最终调用会将索引粒度更改为请求的大小。

提供的间隔大小控制索引项的水平间距。 此值根据 JPEG 的 MCU (最小编码单位) 大小(通常为 8 或 16 个未缩放像素)进行内部舍入。 索引间隔的垂直大小始终等于一个 MCU 大小。

可以立即生成索引,也可以在将来调用 IWICBitmapSource::CopyPixels 时生成索引,以减少冗余的解压缩工作。

要求

要求
最低受支持的客户端 Windows 10 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows
标头 wincodec.h
Library Windowscodecs.lib
DLL Windowscodecs.dll

另请参阅

IWICBitmapSource::CopyPixels

IWICJpegFrameDecode

IWICJpegFrameDecode::ClearIndexing

IWICJpegFrameDecode::D oesSupportIndexing