一、图像发展大趋势及 HarmonyOS 图像格式支持策略
自数字图像诞生以来,图像格式经历了多轮更新迭代。从早期的 BMP、TIFF 等无压缩或轻压缩格式,到后来广泛应用的 JPEG、PNG、GIF 等主流格式,图像编码技术不断演进,其核心目标始终是——在有限的存储空间与带宽条件下,实现更高质量、更高效率的图像呈现。
在 PC 时代,JPEG 和 PNG 分别作为有损压缩与无损压缩的代表,几乎覆盖了绝大多数图像使用场景。但随着数字图像设备的普及和互联网的飞速发展,传统图像格式的局限性日益凸显,催生出新一代图像格式的需求。

现代图像数据呈现出两大显著趋势:
图像质量持续提高:
分辨率稳步提升。
色深逐渐增加。
色域持续拓展。
动态范围逐步升级。

图像数量爆炸性增长:
社交媒体、即时通讯、在线购物等应用推动个人日均拍摄图像数大幅提升。
图像成为 AI、视觉识别等领域的重要数据源。
在当今时代,人人皆为“影像内容生产者”,海量的照片与视频对图像的存储、传输和展示提出了更高的要求。HarmonyOS 从系统层面持续强化图像处理能力,优先支持主流图像格式,并对实际应用中具备显著优势的格式着重进行优化。
目前,HarmonyOS 已支持 GIF、JPEG、PNG、WebP、HEIF、BMP 等主流图像格式的解码与显示,支持将图像编码为 JPEG、PNG、HEIF、WebP、GIF 等格式。对 TIFF 格式和 RAW 格式预览图的解码支持即将上线。更多格式的支持也正在规划推进中。
二、HEIF 的优势及 HarmonyOS 对 HEIF 的优化
HEIF(High Efficiency Image File Format)作为新一代高效图像格式,凭借优异的压缩性能和丰富的编码特性,为数字影像带来了全新的体验。此外,自发布以来的近十年实践中,HEIF 已充分证明其稳定性与成熟度,逐步取代传统格式成为未来图像技术的重要选择。
HEIF 基于 HEVC(H.265)视频压缩标准,具备显著的技术优势:
更高压缩效率:在相同画质下,相比于 JPEG、WEBP 等传统格式,可节省 50%以上的存储空间。
支持 HDR 和高色深:天然支持 10bit 色深、HDR 显示,更适配现代高性能显示设备。
可扩展性强:支持存储增益图 Gain Map、深度图 Depth Map 等辅助图像,适用于 HDR、景深重建等高级图像处理场景。
自 HarmonyOS 5.0 起,对 HEIF 图像的支持已实现全面升级。系统底层架构进行了优化,结合软硬协同的解码方案,大幅提升了解码效率与运行性能。HarmonyOS 5.x 相比于 HarmonyOS 4.x,HEIF 解码性能提升 60%以上,为用户带来更快速、更流畅、更高质量的图像体验。同时,系统也支持 HEIF 硬件编码,能够快速得到 HEIF 图片。

三、图像处理开发示例
HarmonyOS 的 Image 组件和 Image Kit 提供了通用的图像处理 API,无需针对 HEIF 作特殊处理,编程方式与使用 JPEG、PNG 等图源一致。下面针对开发者基于系统能力进行图像处理开发时,可能采取的两种方式进行介绍。
方式 1:直接使用 ArkUI 提供的 Image 组件进行显示

方式简介:
Image 组件提供了通用的图像显示能力,解码、渲染等流程均由系统完成,支持显示 BMP、SVG、GIF、PNG、JPEG、HEIF 等多种图像格式,开发者只需要将图像资源传递给 Image 组件即可实现显示效果。
适用场景:
如果开发者仅期望展示图像,不需要额外加工处理,推荐使用这种方式实现。
核心代码:
方式 2:使用 Image Kit 解码得到图像像素数据,进一步处理后,再使用 Image 组件渲染显示。

方式简介:
Image Kit 提供了高效的图像解码能力,同样支持显示 PNG、JPEG、BMP、SVG、GIF、HEIF 等多种图像格式,还支持指定图像尺寸、解码区域、动态范围等参数选项,能够满足更多场景下的定制化需求。
适用场景:
如果开发者不希望直接展示原图,而是需要对图像进行一定的后处理,推荐使用这种方式实现。
核心代码:
四、HEIF 图像转码方法
考虑到在部分场景下,应用可能仍然希望使用 JPEG 图像,这里也给出将 HEIF 图像转码成 JPEG 图像的方法。

基于 HarmonyOS Image Kit 的图像解码和图像编码能力,只需几行代码即可将 HEIF 图像转码成 JPEG 图像。
核心代码:
了解更多鸿蒙 HEIF 图像开发指导,请访问 HarmonyOS 官网:
1. 如何处理 HEIF 图片:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/heif-adapter-faq
2. Image Kit 开发指南:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/image-kit
3. Image Kit API 参考:
https://developer.huawei.com/consumer/cn/doc/harmonyos-references/image-api
评论