# Image
提供获取pixelmap的数据和信息的接口方法。
@Syscap SystemCapability.Multimedia.Image
**自从:**
8
## 汇总
### 文件
| 文件名称 | 描述 |
| -------- | -------- |
| [image_pixel_map_napi.h](image__pixel__map__napi_8h.md) | 声明可以锁定并访问pixelmap数据的方法,声明解锁的方法。 |
### 结构体
| 结构体名称 | 描述 |
| -------- | -------- |
| [OhosPixelMapInfo](_ohos_pixel_map_info.md) | 用于定义 pixel map 的相关信息。 |
### 枚举
| 枚举名称 | 描述 |
| -------- | -------- |
| { OH_NATIVEXCOMPONENT_RESULT_SUCCESS = 0,
OH_NATIVEXCOMPONENT_RESULT_FAILED = -1,
OH_NATIVEXCOMPONENT_RESULT_BAD_PARAMETER = -2,
OHOS_IMAGE_RESULT_SUCCESS = 0,
OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 } | 函数方法返回值的错误码的[枚举](#anonymous-enum)。 |
| { OHOS_PIXEL_MAP_FORMAT_NONE = 0,
OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3,
OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 } | pixel 格式的[枚举](#anonymous-enum-1)。 |
### 函数
| 函数名称 | 描述 |
| -------- | -------- |
| [OH_GetImageInfo](#oh_getimageinfo) (napi_env env, napi_value value, [OhosPixelMapInfo](_ohos_pixel_map_info.md) \*info) | 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。 |
| [OH_AccessPixels](#oh_accesspixels) (napi_env env, napi_value value, void \*\*addrPtr) | 获取**PixelMap**对象数据的内存地址,并锁定该内存。 |
| [OH_UnAccessPixels](#oh_unaccesspixels) (napi_env env, napi_value value) | 释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels)。 |
## 详细描述
## 枚举类型说明
### anonymous enum
```
anonymous enum
```
**描述:**
函数方法返回值的错误码的枚举。
| 枚举值 | 描述 |
| -------- | -------- |
| OH_NATIVEXCOMPONENT_RESULT_SUCCESS | 成功结果。 |
| OH_NATIVEXCOMPONENT_RESULT_FAILED | 失败结果。 |
| OH_NATIVEXCOMPONENT_RESULT_BAD_PARAMETER | 无效参数。 |
| OHOS_IMAGE_RESULT_SUCCESS | 成功的结果。 |
| OHOS_IMAGE_RESULT_BAD_PARAMETER | 无效值。 |
**自从:**
8
### anonymous enum
```
anonymous enum
```
**描述:**
pixel 格式的枚举。
| 枚举值 | 描述 |
| -------- | -------- |
| OHOS_PIXEL_MAP_FORMAT_NONE | 未知的格式。 |
| OHOS_PIXEL_MAP_FORMAT_RGBA_8888 | 32-bit RGBA。由 R, G, B组成,包括 A 都需要占用 8 bits。存储顺序是从高位到低位。 |
| OHOS_PIXEL_MAP_FORMAT_RGB_565 | 16-bit RGB。仅由 R, G, B 组成。存储顺序是从高位到低位: 红色占用5 bits,绿色占用6 bits,蓝色占用5 bits。 |
**自从:**
8
## 函数说明
### OH_AccessPixels()
```
int32_t OH_AccessPixels (napi_env env, napi_value value, void ** addrPtr )
```
**描述:**
获取**PixelMap**对象数据的内存地址,并锁定该内存。
函数执行成功后,**\*addrPtr**就是获取的待访问的内存地址。访问操作完成后,必须要使用[OH_UnAccessPixels](#oh_unaccesspixels)来释放锁, 否则的话资源无法被释放。待解锁后,内存地址就不可以再被访问和操作。
**参数:**
| Name | 描述 |
| -------- | -------- |
| env | napi的环境指针。 |
| value | 应用层的 **PixelMap** 对象。 |
| addrPtr | 用于指向的内存地址的双指针对象。 |
**参见:**
[OH_UnAccessPixels](#oh_unaccesspixels)
**返回:**
操作成功则返回OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。
**自从:**
8
### OH_GetImageInfo()
```
int32_t OH_GetImageInfo (napi_env env, napi_value value, OhosPixelMapInfo * info )
```
**描述:**
获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。
**参数:**
| Name | 描述 |
| -------- | -------- |
| env | napi的环境指针。 |
| value | 应用层的 **PixelMap** 对象。 |
| info | 用于保存信息的指针对象。更多细节, 参看 [OhosPixelMapInfo](_ohos_pixel_map_info.md)。 |
**返回:**
如果获取并保存信息成功,则返回**0**; 如果操作失败,则返回错误码。
**参见:**
[OhosPixelMapInfo](_ohos_pixel_map_info.md)
**自从:**
8
### OH_UnAccessPixels()
```
int32_t OH_UnAccessPixels (napi_env env, napi_value value )
```
**描述:**
释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels)。
**参数:**
| Name | 描述 |
| -------- | -------- |
| env | napi的环境指针。 |
| value | 应用层的 **PixelMap** 对象。 |
**返回:**
操作成功则返回OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。
**参见:**
AccessPixels
**自从:**
8