1# Image 2 3 4提供获取pixelmap的数据和信息的接口方法。 5 6使用该文件下接口,需要依赖:libpixelmap_ndk.z.so 7 8@Syscap SystemCapability.Multimedia.Image 9 10 11**起始版本:** 12 13 148 15 16 17## 汇总 18 19 20### 文件 21 22| 文件名称 | 描述 | 23| -------- | -------- | 24| [image_pixel_map_napi.h](image__pixel__map__napi_8h.md) | 声明可以锁定并访问pixelmap数据的方法,声明解锁的方法。 <br>引用文件:<multimedia/image_framework/image_pixel_map_napi.h>| 25 26 27### 结构体 28 29| 结构体名称 | 描述 | 30| -------- | -------- | 31| [OhosPixelMapInfo](_ohos_pixel_map_info.md) | 用于定义 pixel map 的相关信息。 | 32 33 34### 枚举 35 36| 名称 | 描述 | 37| -------- | -------- | 38| { OHOS_IMAGE_RESULT_SUCCESS = 0, OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 } | 函数方法返回值的错误码的枚举。| 39| { OHOS_PIXEL_MAP_FORMAT_NONE = 0, OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3, OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 } | pixel 格式的枚举。| 40 41 42### 函数 43 44| 名称 | 描述 | 45| -------- | -------- | 46| [OH_GetImageInfo](#oh_getimageinfo) (napi_env env, napi_value value, [OhosPixelMapInfo](_ohos_pixel_map_info.md) \*info) | 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。| 47| [OH_AccessPixels](#oh_accesspixels) (napi_env env, napi_value value, void \*\*addrPtr) | 获取**PixelMap**对象数据的内存地址,并锁定该内存。| 48| [OH_UnAccessPixels](#oh_unaccesspixels) (napi_env env, napi_value value) | 释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels)。| 49 50 51## 枚举类型说明 52 53 54### anonymous enum 55 56 57``` 58anonymous enum 59``` 60**描述:** 61函数方法返回值的错误码的枚举。 62 63| 枚举值 | 描述 | 64| -------- | -------- | 65| OHOS_IMAGE_RESULT_SUCCESS| 成功的结果 | 66| OHOS_IMAGE_RESULT_BAD_PARAMETER| 无效值 | 67 68**起始版本:** 698 70 71### anonymous enum 72 73 74``` 75anonymous enum 76``` 77**描述:** 78pixel 格式的枚举。 79 80| 枚举值 | 描述 | 81| -------- | -------- | 82| OHOS_PIXEL_MAP_FORMAT_NONE| 未知的格式 | 83| OHOS_PIXEL_MAP_FORMAT_RGBA_8888| 32-bit RGBA。 由 R, G, B组成,包括 A 都需要占用 8 bits。存储顺序是从高位到低位。 | 84| OHOS_PIXEL_MAP_FORMAT_RGB_565| 16-bit RGB。 仅由 R, G, B 组成. 存储顺序是从高位到低位: 红色占用5 bits,绿色占用6 bits,蓝色占用5 bits。 | 85 86**起始版本:** 878 88 89## 函数说明 90 91 92### OH_AccessPixels() 93 94 95``` 96int32_t OH_AccessPixels (napi_env env, napi_value value, void ** addrPtr ) 97``` 98**描述:** 99获取**PixelMap**对象数据的内存地址,并锁定该内存。 100 101函数执行成功后,**\*addrPtr**就是获取的待访问的内存地址. 访问操作完成后,必须要使用[OH_UnAccessPixels](#oh_unaccesspixels)来释放锁, 否则的话资源无法被释放. 待解锁后,内存地址就不可以再被访问和操作。 102 103**参数:** 104 105| 名称 | 描述 | 106| -------- | -------- | 107| env | napi的环境指针。| 108| value | 应用层的 **PixelMap** 对象。| 109| addrPtr | 用于指向的内存地址的双指针对象。| 110 111**参见:** 112 113UnAccessPixels 114 115**返回:** 116 117操作成功则返回 OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。 118 119**起始版本:** 1208 121 122 123### OH_GetImageInfo() 124 125 126``` 127struct OhosPixelMapCreateOps OH_GetImageInfo (napi_env env, napi_value value, OhosPixelMapInfo * info ) 128``` 129**描述:** 130获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。 131 132**参数:** 133 134| 名称 | 描述 | 135| -------- | -------- | 136| env | napi的环境指针。| 137| value | 应用层的 **PixelMap** 对象。| 138| info | 用于保存信息的指针对象. 更多细节, 参看 [OhosPixelMapInfo](_ohos_pixel_map_info.md)。| 139 140**返回:** 141 142如果获取并保存信息成功,则返回**0**; 如果操作失败,则返回错误码。 143 144**参见:** 145 146[OhosPixelMapInfo](_ohos_pixel_map_info.md) 147 148**起始版本:** 1498 150 151### OH_UnAccessPixels() 152 153 154``` 155int32_t OH_UnAccessPixels (napi_env env, napi_value value ) 156``` 157**描述:** 158释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels). 159 160**参数:** 161 162| 名称 | 描述 | 163| -------- | -------- | 164| env | napi的环境指针。| 165| value | 应用层的 **PixelMap** 对象。| 166 167**返回:** 168 169操作成功则返回 OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。 170 171**参见:** 172 173AccessPixels 174 175**起始版本:** 1768 177