• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# image_pixel_map_napi.h
2
3## 概述
4
5声明可以锁定并访问pixelmap数据的方法,声明解锁的方法。
6
7**库:** libpixelmap_ndk.so
8
9**系统能力:** SystemCapability.Multimedia.Image.Core
10
11**引用文件:** <multimedia/image_framework/image_pixel_map_napi.h>
12
13**起始版本:** 8
14
15**相关模块:** [Image](capi-image.md)
16
17## 汇总
18
19### 结构体
20
21| 名称 | typedef关键字 | 描述 |
22| -- | -- | -- |
23| [OhosPixelMapInfo](capi-image-ohospixelmapinfo.md) | - | 用于定义PixelMap的相关信息。 |
24
25### 枚举
26
27| 名称 | 描述 |
28| -- | -- |
29| [方法返回的错误码](#方法返回的错误码) | 函数方法返回值的错误码的枚举。 |
30| [像素格式](#像素格式) | 像素格式的枚举。 |
31| [anonymous enum](#pixelmap缩放类型) | PixelMap缩放类型的枚举。 |
32
33### 函数
34
35| 名称 | 描述 |
36| -- | -- |
37| [int32_t OH_GetImageInfo(napi_env env, napi_value value, OhosPixelMapInfo *info)](#oh_getimageinfo) | 获取PixelMap的信息,并记录信息到[OhosPixelMapInfo](capi-image-ohospixelmapinfo.md)结构中。 |
38| [int32_t OH_AccessPixels(napi_env env, napi_value value, void** addrPtr)](#oh_accesspixels) | 获取PixelMap对象数据的内存地址,并锁定该内存。<br>函数执行成功后,\*addrPtr就是获取的待访问的内存地址。访问操作完成后,必须要使用[OH_UnAccessPixels](#oh_unaccesspixels)来释放锁,否则的话资源无法被释放。待解锁后,内存地址就不可以再被访问和操作。 |
39| [int32_t OH_UnAccessPixels(napi_env env, napi_value value)](#oh_unaccesspixels) | 释放PixelMap对象数据的内存锁,用于匹配方法[OH_AccessPixels](#oh_accesspixels)。 |
40
41## 枚举类型说明
42
43### 方法返回的错误码
44
45```
46enum anonymous enum
47```
48
49**描述**
50
51函数方法返回值的错误码的枚举。
52
53**起始版本:** 8
54
55**废弃版本:** 10
56
57| 枚举项 | 描述 |
58| -- | -- |
59| OHOS_IMAGE_RESULT_SUCCESS = 0 | 成功的结果。 |
60| OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 | 无效值。 |
61
62### 像素格式
63
64```
65enum anonymous enum
66```
67
68**描述**
69
70像素格式的枚举。
71
72**起始版本:** 8
73
74**废弃版本:** 10
75
76| 枚举项 | 描述 |
77| -- | -- |
78| OHOS_PIXEL_MAP_FORMAT_NONE = 0 | 未知的格式。 |
79| OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3 | RGBA_8888格式。 |
80| OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 | RGB_565格式。 |
81
82### PixelMap缩放类型
83
84```
85enum anonymous enum
86```
87
88**描述**
89
90PixelMap缩放类型的枚举。
91
92**起始版本:** 10
93
94| 枚举项 | 描述 |
95| -- | -- |
96| OHOS_PIXEL_MAP_SCALE_MODE_FIT_TARGET_SIZE = 0 | 适应目标图片大小的格式。 |
97| OHOS_PIXEL_MAP_SCALE_MODE_CENTER_CROP = 1 | 以中心进行缩放的格式。 |
98
99
100## 函数说明
101
102### OH_GetImageInfo()
103
104```
105int32_t OH_GetImageInfo(napi_env env, napi_value value, OhosPixelMapInfo *info)
106```
107
108**描述**
109
110获取PixelMap的信息,并记录信息到[OhosPixelMapInfo](capi-image-ohospixelmapinfo.md)结构中。
111
112**起始版本:** 8
113
114**废弃版本:** 10
115
116
117**参数:**
118
119| 参数项 | 描述 |
120| -- | -- |
121| napi_env env | napi的环境指针。 |
122| napi_value value | 应用层的PixelMap对象。 |
123| [OhosPixelMapInfo](capi-image-ohospixelmapinfo.md) *info | 用于保存信息的指针对象。 |
124
125**返回:**
126
127| 类型 | 说明 |
128| -- | -- |
129| int32_t | [错误码](#方法返回的错误码):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br>OHOS_IMAGE_RESULT_BAD_PARAMETER:操作失败。 |
130
131### OH_AccessPixels()
132
133```
134int32_t OH_AccessPixels(napi_env env, napi_value value, void** addrPtr)
135```
136
137**描述**
138
139获取PixelMap对象数据的内存地址,并锁定该内存。
140
141函数执行成功后,\*addrPtr就是获取的待访问的内存地址。访问操作完成后,必须要使用[OH_UnAccessPixels](#oh_unaccesspixels)来释放锁,否则的话资源无法被释放。待解锁后,内存地址就不可以再被访问和操作。
142
143**起始版本:** 8
144
145**废弃版本:** 10
146
147
148**参数:**
149
150| 参数项 | 描述 |
151| -- | -- |
152| napi_env env | napi的环境指针。 |
153| napi_value value | 应用层的PixelMap对象。 |
154| void** addrPtr | 用于指向的内存地址的双指针对象。 |
155
156**返回:**
157
158| 类型 | 说明 |
159| -- | -- |
160| int32_t | [错误码](#方法返回的错误码):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br>OHOS_IMAGE_RESULT_BAD_PARAMETER:操作失败。 |
161
162### OH_UnAccessPixels()
163
164```
165int32_t OH_UnAccessPixels(napi_env env, napi_value value)
166```
167
168**描述**
169
170释放PixelMap对象数据的内存锁,用于匹配方法[OH_AccessPixels](#oh_accesspixels)。
171
172**起始版本:** 8
173
174**废弃版本:** 10
175
176
177**参数:**
178
179| 参数项 | 描述 |
180| -- | -- |
181| napi_env env | napi的环境指针。 |
182| napi_value value | 应用层的PixelMap对象。 |
183
184**返回:**
185
186| 类型 | 说明 |
187| -- | -- |
188| int32_t | [错误码](#方法返回的错误码):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br>OHOS_IMAGE_RESULT_BAD_PARAMETER:操作失败。 |
189
190
191
192