• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Image Kit简介
2
3应用开发中的图片开发是对图片像素数据进行解析、处理、构造的过程,达到目标图片效果,主要涉及图片解码、图片处理、图片编码等。
4
5在学习图片开发前,需要熟悉以下基本概念。
6
7- 图片解码
8
9  指将所支持格式的存档图片解码成统一的PixelMap,以便在应用或系统中进行图片显示或图片处理。当前支持的存档图片格式包括JPEG、PNG、GIF、RAW、WebP、BMP、SVG、ICO。
10
11- PixelMap
12
13  指图片解码后无压缩的位图,用于图片显示或图片处理。
14
15- 图片处理
16
17  指对PixelMap进行相关的操作,如旋转、缩放、设置透明度、获取图片信息、读写像素数据等。
18
19- 图片编码
20
21  指将PixelMap编码成不同格式的存档图片(当前仅支持JPEG、WebP和PNG),用于后续处理,如保存、传输等。
22
23图片开发的主要流程如下图所示。
24
25**图1** 图片开发流程示意图  
26![Image development process](figures/image-development-process.png)
27
281. 获取图片:通过应用沙箱等方式获取原始图片。
29
302. 创建ImageSource实例:ImageSource是图片解码出来的图片源类,用于获取或修改图片相关信息。
31
323. [图片解码](image-decoding.md):通过ImageSource解码生成PixelMap。
33
344. [图片处理](image-transformation.md):对PixelMap进行处理,更改图片属性实现图片的旋转、缩放、裁剪等效果。然后通过[Image组件](../../ui/arkts-graphics-display.md)显示图片。
35
365. [图片编码](image-encoding.md):使用图片打包器类ImagePacker,将PixelMap或ImageSource进行压缩编码,生成一张新的图片。
37
38除上述基本图片开发能力外,OpenHarmony还提供常用[图片工具](image-tool.md),供开发者选择使用。
39
40## 亮点/特征
41
42Image Kit编解码支持多种图片格式,并采用了高效的算法和优化策略,提高了图片处理的速度和效率。
43
44## 约束与限制
45
46在图片处理中,可能需要使用用户图片,应用需要向用户申请对应的读写操作权限才能保证功能的正常运行。
47
48## 与相关Kit的关系
49
50图片框架提供图片编解码能力,为Image组件及图库等应用提供支撑,其解码结果可以传给[Image组件](../../ui/arkts-graphics-display.md)显示。
51
52## 相关实例
53
54针对图片开发,有以下相关实例可供参考:
55
56- [图片显示及处理(ArkTS)(API10)](https://gitee.com/openharmony/applications_app_samples/tree/master/code/BasicFeature/Media/Image)
57
58- [图片显示(ArkTS)(API9)](https://gitee.com/openharmony/applications_app_samples/tree/master/code/BasicFeature/Media/ImageShow)
59
60- [图片裁剪与分割(ArkTS)(API9)](https://gitee.com/openharmony/applications_app_samples/tree/master/code/BasicFeature/Media/GamePuzzle)
61