1# Image
2
3
4## 概述
5
6提供image接口的访问。
7
8**系统能力:** SystemCapability.Multimedia.Image
9
10**起始版本:** 8
11
12
13## 汇总
14
15
16### 文件
17
18| 名称 | 描述 | 
19| -------- | -------- |
20| [image_mdk.h](image__mdk_8h.md) | 声明访问图像剪辑矩形、大小、格式和组件数据的方法。 | 
21| [image_mdk_common.h](image__mdk__common_8h.md) | 声明图像常用的枚举值和结构体。 |
22| [image_packer_mdk.h](image__packer__mdk_8h.md) | 声明用于将图像编码到缓冲区或文件的方法。 | 
23| [image_pixel_map_mdk.h](image__pixel__map__mdk_8h.md) | 声明可以锁定并访问PixelMap数据的方法,声明解锁的方法。 | 
24| [image_pixel_map_napi.h](image__pixel__map__napi_8h.md) | (已废弃)声明可以锁定并访问PixelMap数据的方法,声明解锁的方法。 | 
25| [image_receiver_mdk.h](image__receiver__mdk_8h.md) | 声明从native层获取图片数据的方法。 | 
26| [image_source_mdk.h](image__source__mdk_8h.md) | 声明将图片源解码成像素位图的方法。 |
27
28
29### 结构体
30
31| 名称 | 描述 | 
32| -------- | -------- |
33| struct  [OhosImageRect](_o_h_o_s_1_1_media_1_1_ohos_image_rect.md) | 定义图像矩形信息。  | 
34| struct  [OhosImageComponent](_o_h_o_s_1_1_media_1_1_ohos_image_component.md) | 定义图像组成信息。  | 
35| struct  [OhosImageSize](_ohos_image_size.md) | 定义图像大小。  | 
36| struct  [ImagePacker_Opts_](_image_packer___opts__.md) | 定义图像编码选项信息。  | 
37| struct  [OhosPixelMapInfos](_ohos_pixel_map_infos.md) | 用于定义PixelMap的相关信息。  | 
38| struct  [OhosPixelMapCreateOps](_ohos_pixel_map_create_ops.md) | 用于定义创建PixelMap设置选项的相关信息。  | 
39| struct  [OhosPixelMapInfo](_o_h_o_s_1_1_media_1_1_ohos_pixel_map_info.md) | 用于定义PixelMap的相关信息。  | 
40| struct  [OhosImageReceiverInfo](_ohos_image_receiver_info.md) | 定义**ImageReceiver**的相关信息。  | 
41| struct  [OhosImageRegion](_ohos_image_region.md) | 定义图像源解码的范围选项。  | 
42| struct  [OhosImageSourceOps](_ohos_image_source_ops.md) | 定义图像源选项信息。  | 
43| struct  [OhosImageDecodingOps](_ohos_image_decoding_ops.md) | 定义图像源解码选项。  | 
44| struct  [OhosImageSourceInfo](_ohos_image_source_info.md) | 定义图像源信息。  | 
45| struct  [OhosImageSource](_ohos_image_source.md) | 定义图像源输入资源,每次仅接收一种类型。  | 
46| struct  [OhosImageSourceDelayTimeList](_ohos_image_source_delay_time_list.md) | 定义图像源延迟时间列表。  | 
47| struct  [OhosImageSourceSupportedFormat](_ohos_image_source_supported_format.md) | 定义图像源支持的格式字符串。   | 
48| struct  [OhosImageSourceSupportedFormatList](_ohos_image_source_supported_format_list.md) | 定义图像源支持的格式字符串列表。   | 
49| struct  [OhosImageSourceProperty](_ohos_image_source_property.md) | 定义图像源属性键值字符串。   | 
50| struct  [OhosImageSourceUpdateData](_ohos_image_source_update_data.md) | 定义图像源更新数据选项。  | 
51
52
53### 宏定义
54
55| 名称 | 描述 | 
56| -------- | -------- |
57| **IMAGE_RESULT_BASE** 62980096 | 接口返回值的基础值。  |
58
59
60### 类型定义
61
62| 名称 | 描述 | 
63| -------- | -------- |
64| typedef struct ImageNative_ [ImageNative](#imagenative) | 为图像接口定义native层图像对象。  | 
65| typedef struct ImagePacker_Native_ [ImagePacker_Native](#imagepacker_native) | 为编码器方法定义native层编码器对象。  | 
66| typedef struct [ImagePacker_Opts_](_image_packer___opts__.md) [ImagePacker_Opts](#imagepacker_opts) | 定义图像编码选项的别名。  | 
67| typedef struct NativePixelMap_ [NativePixelMap](#nativepixelmap) | 定义native层PixelMap数据类型名称。  | 
68| typedef struct [OhosPixelMapInfos](_ohos_pixel_map_infos.md) [OhosPixelMapInfos](#ohospixelmapinfos) | 用于定义PixelMap的相关信息。  | 
69| typedef struct ImageReceiverNative_ [ImageReceiverNative](#imagereceivernative) | 用于定义ImageReceiverNative数据类型名称。  | 
70| typedef void(\* [OH_Image_Receiver_On_Callback](#oh_image_receiver_on_callback)) () | 定义native层图片的回调方法。  | 
71| typedef struct ImageSourceNative_ [ImageSourceNative](#imagesourcenative) | 为图像源方法定义native层图像源对象。  | 
72
73
74### 枚举
75
76| 名称 | 描述 | 
77| -------- | -------- |
78| { OHOS_IMAGE_FORMAT_YCBCR_422_SP = 1000,<br/>OHOS_IMAGE_FORMAT_JPEG = 2000 } | 图像格式枚举值。 | 
79| { OHOS_IMAGE_COMPONENT_FORMAT_YUV_Y = 1,<br/>OHOS_IMAGE_COMPONENT_FORMAT_YUV_U = 2,<br/>OHOS_IMAGE_COMPONENT_FORMAT_YUV_V = 3,<br/>OHOS_IMAGE_COMPONENT_FORMAT_JPEG = 4 } | 图像组成类型枚举值。 | 
80| [IRNdkErrCode](#irndkerrcode-1) {<br/>IMAGE_RESULT_SUCCESS = 0, IMAGE_RESULT_BAD_PARAMETER = -1,<br/>IMAGE_RESULT_IMAGE_RESULT_BASE = IMAGE_RESULT_BASE,<br/>IMAGE_RESULT_ERR_IPC = IMAGE_RESULT_BASE + 1,<br/>IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST = IMAGE_RESULT_BASE + 2,<br/>IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL = IMAGE_RESULT_BASE + 3,<br/>IMAGE_RESULT_DECODE_ABNORMAL = IMAGE_RESULT_BASE + 4,<br/>IMAGE_RESULT_DATA_ABNORMAL = IMAGE_RESULT_BASE + 5,<br/>IMAGE_RESULT_MALLOC_ABNORMAL = IMAGE_RESULT_BASE + 6,<br/>IMAGE_RESULT_DATA_UNSUPPORT = IMAGE_RESULT_BASE + 7,<br/>IMAGE_RESULT_INIT_ABNORMAL = IMAGE_RESULT_BASE + 8,<br/>IMAGE_RESULT_GET_DATA_ABNORMAL = IMAGE_RESULT_BASE + 9,<br/>IMAGE_RESULT_TOO_LARGE = IMAGE_RESULT_BASE + 10,<br/>IMAGE_RESULT_TRANSFORM = IMAGE_RESULT_BASE + 11,<br/>IMAGE_RESULT_COLOR_CONVERT = IMAGE_RESULT_BASE + 12,<br/>IMAGE_RESULT_CROP = IMAGE_RESULT_BASE + 13,<br/>IMAGE_RESULT_SOURCE_DATA = IMAGE_RESULT_BASE + 14,<br/>IMAGE_RESULT_SOURCE_DATA_INCOMPLETE = IMAGE_RESULT_BASE + 15,<br/>IMAGE_RESULT_MISMATCHED_FORMAT = IMAGE_RESULT_BASE + 16,<br/>IMAGE_RESULT_UNKNOWN_FORMAT = IMAGE_RESULT_BASE + 17,<br/>IMAGE_RESULT_SOURCE_UNRESOLVED = IMAGE_RESULT_BASE + 18,<br/>IMAGE_RESULT_INVALID_PARAMETER = IMAGE_RESULT_BASE + 19,<br/>IMAGE_RESULT_DECODE_FAILED = IMAGE_RESULT_BASE + 20,<br/>IMAGE_RESULT_PLUGIN_REGISTER_FAILED = IMAGE_RESULT_BASE + 21,<br/>IMAGE_RESULT_PLUGIN_CREATE_FAILED = IMAGE_RESULT_BASE + 22,<br/>IMAGE_RESULT_ENCODE_FAILED = IMAGE_RESULT_BASE + 23,<br/>IMAGE_RESULT_ADD_PIXEL_MAP_FAILED = IMAGE_RESULT_BASE + 24,<br/>IMAGE_RESULT_HW_DECODE_UNSUPPORT = IMAGE_RESULT_BASE + 25,<br/>IMAGE_RESULT_DECODE_HEAD_ABNORMAL = IMAGE_RESULT_BASE + 26,<br/>IMAGE_RESULT_DECODE_EXIF_UNSUPPORT = IMAGE_RESULT_BASE + 27,<br/>IMAGE_RESULT_PROPERTY_NOT_EXIST = IMAGE_RESULT_BASE + 28,<br/>IMAGE_RESULT_MEDIA_DATA_UNSUPPORT = IMAGE_RESULT_BASE + 30,<br/>IMAGE_RESULT_MEDIA_TOO_LARGE = IMAGE_RESULT_BASE + 31,<br/>IMAGE_RESULT_MEDIA_MALLOC_FAILED = IMAGE_RESULT_BASE + 32,<br/>IMAGE_RESULT_MEDIA_END_OF_STREAM = IMAGE_RESULT_BASE + 33,<br/>IMAGE_RESULT_MEDIA_IO_ABNORMAL = IMAGE_RESULT_BASE + 34,<br/>IMAGE_RESULT_MEDIA_MALFORMED = IMAGE_RESULT_BASE + 35,<br/>IMAGE_RESULT_MEDIA_BUFFER_TOO_SMALL = IMAGE_RESULT_BASE + 36,<br/>IMAGE_RESULT_MEDIA_OUT_OF_RANGE = IMAGE_RESULT_BASE + 37,<br/>IMAGE_RESULT_MEDIA_STATUS_ABNORMAL = IMAGE_RESULT_BASE + 38,<br/>IMAGE_RESULT_MEDIA_VALUE_INVALID = IMAGE_RESULT_BASE + 39,<br/>IMAGE_RESULT_MEDIA_NULL_POINTER = IMAGE_RESULT_BASE + 40,<br/>IMAGE_RESULT_MEDIA_INVALID_OPERATION = IMAGE_RESULT_BASE + 41,<br/>IMAGE_RESULT_MEDIA_ERR_PLAYER_NOT_INIT = IMAGE_RESULT_BASE + 42,<br/>IMAGE_RESULT_MEDIA_EARLY_PREPARE = IMAGE_RESULT_BASE + 43,<br/>IMAGE_RESULT_MEDIA_SEEK_ERR = IMAGE_RESULT_BASE + 44,<br/>IMAGE_RESULT_MEDIA_PERMISSION_DENIED = IMAGE_RESULT_BASE + 45,<br/>IMAGE_RESULT_MEDIA_DEAD_OBJECT = IMAGE_RESULT_BASE + 46,<br/>IMAGE_RESULT_MEDIA_TIMED_OUT = IMAGE_RESULT_BASE + 47,<br/>IMAGE_RESULT_MEDIA_TRACK_NOT_ALL_SUPPORTED = IMAGE_RESULT_BASE + 48,<br/>IMAGE_RESULT_MEDIA_ADAPTER_INIT_FAILED = IMAGE_RESULT_BASE + 49,<br/>IMAGE_RESULT_MEDIA_WRITE_PARCEL_FAIL = IMAGE_RESULT_BASE + 50,<br/>IMAGE_RESULT_MEDIA_READ_PARCEL_FAIL = IMAGE_RESULT_BASE + 51,<br/>IMAGE_RESULT_MEDIA_NO_AVAIL_BUFFER = IMAGE_RESULT_BASE + 52,<br/>IMAGE_RESULT_MEDIA_INVALID_PARAM = IMAGE_RESULT_BASE + 53,<br/>IMAGE_RESULT_MEDIA_CODEC_ADAPTER_NOT_EXIST = IMAGE_RESULT_BASE + 54,<br/>IMAGE_RESULT_MEDIA_CREATE_CODEC_ADAPTER_FAILED = IMAGE_RESULT_BASE + 55,<br/>IMAGE_RESULT_MEDIA_CODEC_ADAPTER_NOT_INIT = IMAGE_RESULT_BASE + 56,<br/>IMAGE_RESULT_MEDIA_ZCODEC_CREATE_FAILED = IMAGE_RESULT_BASE + 57,<br/>IMAGE_RESULT_MEDIA_ZCODEC_NOT_EXIST = IMAGE_RESULT_BASE + 58,<br/>IMAGE_RESULT_MEDIA_JNI_CLASS_NOT_EXIST = IMAGE_RESULT_BASE + 59,<br/>IMAGE_RESULT_MEDIA_JNI_METHOD_NOT_EXIST = IMAGE_RESULT_BASE + 60,<br/>IMAGE_RESULT_MEDIA_JNI_NEW_OBJ_FAILED = IMAGE_RESULT_BASE + 61,<br/>IMAGE_RESULT_MEDIA_JNI_COMMON_ERROR = IMAGE_RESULT_BASE + 62,<br/>IMAGE_RESULT_MEDIA_DISTRIBUTE_NOT_SUPPORT = IMAGE_RESULT_BASE + 63,<br/>IMAGE_RESULT_MEDIA_SOURCE_NOT_SET = IMAGE_RESULT_BASE + 64,<br/>IMAGE_RESULT_MEDIA_RTSP_ADAPTER_NOT_INIT = IMAGE_RESULT_BASE + 65,<br/>IMAGE_RESULT_MEDIA_RTSP_ADAPTER_NOT_EXIST = IMAGE_RESULT_BASE + 66,<br/>IMAGE_RESULT_MEDIA_RTSP_SURFACE_UNSUPPORT = IMAGE_RESULT_BASE + 67,<br/>IMAGE_RESULT_MEDIA_RTSP_CAPTURE_NOT_INIT = IMAGE_RESULT_BASE + 68,<br/>IMAGE_RESULT_MEDIA_RTSP_SOURCE_URL_INVALID = IMAGE_RESULT_BASE + 69,<br/>IMAGE_RESULT_MEDIA_RTSP_VIDEO_TRACK_NOT_FOUND = IMAGE_RESULT_BASE + 70,<br/>IMAGE_RESULT_MEDIA_RTSP_CAMERA_NUM_REACH_MAX = IMAGE_RESULT_BASE + 71,<br/>IMAGE_RESULT_MEDIA_SET_VOLUME = IMAGE_RESULT_BASE + 72,<br/>IMAGE_RESULT_MEDIA_NUMBER_OVERFLOW = IMAGE_RESULT_BASE + 73,<br/>IMAGE_RESULT_MEDIA_DIS_PLAYER_UNSUPPORTED = IMAGE_RESULT_BASE + 74,<br/>IMAGE_RESULT_MEDIA_DENCODE_ICC_FAILED = IMAGE_RESULT_BASE + 75,<br/>IMAGE_RESULT_MEDIA_ENCODE_ICC_FAILED = IMAGE_RESULT_BASE + 76,<br/>IMAGE_RESULT_MEDIA_READ_PIXELMAP_FAILED = IMAGE_RESULT_BASE + 150,<br/>IMAGE_RESULT_MEDIA_WRITE_PIXELMAP_FAILED = IMAGE_RESULT_BASE + 151,<br/>IMAGE_RESULT_MEDIA_PIXELMAP_NOT_ALLOW_MODIFY = IMAGE_RESULT_BASE + 152,<br/>IMAGE_RESULT_MEDIA_CONFIG_FAILED = IMAGE_RESULT_BASE + 153,<br/>IMAGE_RESULT_JNI_ENV_ABNORMAL = IMAGE_RESULT_BASE + 154,<br/>IMAGE_RESULT_SURFACE_GRALLOC_BUFFER_FAILED = IMAGE_RESULT_BASE + 155,<br/>IMAGE_RESULT_CREATE_SURFACE_FAILED = IMAGE_RESULT_BASE + 156,<br/>IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED = IMAGE_RESULT_BASE + 157,<br/>IMAGE_RESULT_GET_SURFACE_FAILED = IMAGE_RESULT_BASE + 158,<br/>IMAGE_RESULT_SURFACE_ACQUIRE_BUFFER_FAILED = IMAGE_RESULT_BASE + 159,<br/>IMAGE_RESULT_SURFACE_REQUEST_BUFFER_FAILED = IMAGE_RESULT_BASE + 160,<br/>IMAGE_RESULT_REGISTER_LISTENER_FAILED = IMAGE_RESULT_BASE + 161,<br/>IMAGE_RESULT_REGISTER_BUFFER_FAILED = IMAGE_RESULT_BASE + 162,<br/>IMAGE_RESULT_FREAD_FAILED = IMAGE_RESULT_BASE + 163,<br/>IMAGE_RESULT_PEEK_FAILED = IMAGE_RESULT_BASE + 164,<br/>IMAGE_RESULT_SEEK_FAILED = IMAGE_RESULT_BASE + 165,<br/>IMAGE_RESULT_STREAM_SIZE_ERROR = IMAGE_RESULT_BASE + 166,<br/>IMAGE_RESULT_FILE_FD_ERROR = IMAGE_RESULT_BASE + 167,<br/>IMAGE_RESULT_FILE_DAMAGED = IMAGE_RESULT_BASE + 168,<br/>IMAGE_RESULT_CREATE_DECODER_FAILED = IMAGE_RESULT_BASE + 169,<br/>IMAGE_RESULT_CREATE_ENCODER_FAILED = IMAGE_RESULT_BASE + 170,<br/>IMAGE_RESULT_CHECK_FORMAT_ERROR = IMAGE_RESULT_BASE + 171,<br/>IMAGE_RESULT_THIRDPART_SKIA_ERROR = IMAGE_RESULT_BASE + 172,<br/>IMAGE_RESULT_HW_DECODE_FAILED = IMAGE_RESULT_BASE + 173,<br/>IMAGE_RESULT_ALLOCATER_TYPE_ERROR = IMAGE_RESULT_BASE + 174,<br/>IMAGE_RESULT_ALPHA_TYPE_ERROR = IMAGE_RESULT_BASE + 175,<br/>IMAGE_RESULT_INDEX_INVALID = IMAGE_RESULT_BASE + 176,<br/>IMAGE_RESULT_MEDIA_UNKNOWN = IMAGE_RESULT_BASE + 200<br/>} | 可能出现的返回值的枚举。 | 
81| { OHOS_PIXEL_MAP_ALPHA_TYPE_UNKNOWN = 0,<br/>OHOS_PIXEL_MAP_ALPHA_TYPE_OPAQUE = 1,<br/>OHOS_PIXEL_MAP_ALPHA_TYPE_PREMUL = 2,<br/>OHOS_PIXEL_MAP_ALPHA_TYPE_UNPREMUL = 3 } | PixelMap 透明度类型的枚举。 | 
82| { OHOS_PIXEL_MAP_READ_ONLY = 0,<br/>OHOS_PIXEL_MAP_EDITABLE = 1 } | PixelMap 编辑类型的枚举。 | 
83| [OH_PixelMap_AntiAliasingLevel](#oh_pixelmap_antialiasinglevel) { <br/>OH_PixelMap_AntiAliasing_NONE = 0, <br/>OH_PixelMap_AntiAliasing_LOW = 1, <br/>OH_PixelMap_AntiAliasing_MEDIUM = 2, <br/>OH_PixelMap_AntiAliasing_HIGH = 3 <br/>} | Pixelmap缩放时采用的缩放算法。  | 
84| { OHOS_IMAGE_RESULT_SUCCESS = 0,<br/>OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 } | 函数方法返回值的错误码的枚举。 | 
85| { OHOS_PIXEL_MAP_FORMAT_NONE = 0,<br/>OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3,<br/>OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 } | pixel 格式的枚举。 | 
86| { OHOS_PIXEL_MAP_SCALE_MODE_FIT_TARGET_SIZE = 0,<br/>OHOS_PIXEL_MAP_SCALE_MODE_CENTER_CROP = 1 } | PixelMap 缩放类型的枚举。 | 
87
88
89### 函数
90
91| 名称 | 描述 | 
92| -------- | -------- |
93| [ImageNative](#imagenative) \* [OH_Image_InitImageNative](#oh_image_initimagenative) (napi_env env, napi_value source) | 从输入的JavaScript Native API **图像** 对象中解析 native **ImageNative** 对象。  | 
94| int32_t [OH_Image_ClipRect](#oh_image_cliprect) (const [ImageNative](#imagenative) \*native, struct [OhosImageRect](_o_h_o_s_1_1_media_1_1_ohos_image_rect.md) \*rect) | 获取native **ImageNative** 对象 [OhosImageRect](_o_h_o_s_1_1_media_1_1_ohos_image_rect.md) 信息。  | 
95| int32_t [OH_Image_Size](#oh_image_size) (const [ImageNative](#imagenative) \*native, struct [OhosImageSize](_ohos_image_size.md) \*size) | 获取native **ImageNative** 对象的 [OhosImageSize](_ohos_image_size.md) 信息。  | 
96| int32_t [OH_Image_Format](#oh_image_format) (const [ImageNative](#imagenative) \*native, int32_t \*format) | 获取native **ImageNative** 对象的图像格式。  | 
97| int32_t [OH_Image_GetComponent](#oh_image_getcomponent) (const [ImageNative](#imagenative) \*native, int32_t componentType, struct [OhosImageComponent](_o_h_o_s_1_1_media_1_1_ohos_image_component.md) \*componentNative) | 从 native **ImageNative** 对象中获取 [OhosImageComponent](_o_h_o_s_1_1_media_1_1_ohos_image_component.md)。  | 
98| int32_t [OH_Image_Release](#oh_image_release) ([ImageNative](#imagenative) \*native) | 释放 **ImageNative** native对象。   | 
99| int32_t [OH_ImagePacker_Create](#oh_imagepacker_create) (napi_env env, napi_value \*res) | 获取JavaScript native层ImagePacker对象。  | 
100| [ImagePacker_Native](#imagepacker_native) \* [OH_ImagePacker_InitNative](#oh_imagepacker_initnative) (napi_env env, napi_value packer) | 从输入JavaScript native层ImagePacker对象中,转换成ImagePacker_Native值。  | 
101| int32_t [OH_ImagePacker_PackToData](#oh_imagepacker_packtodata) ([ImagePacker_Native](#imagepacker_native) \*native, napi_value source, [ImagePacker_Opts](#imagepacker_opts) \*opts, uint8_t \*outData, size_t \*size) | 通过一个给定的选项ImagePacker_Opts结构体,将输入JavaScript native层PixelMap对象或者ImageSource对象编码并输出到指定的缓存区outData中。 | 
102| int32_t [OH_ImagePacker_PackToFile](#oh_imagepacker_packtofile) ([ImagePacker_Native](#imagepacker_native) \*native, napi_value source, [ImagePacker_Opts](#imagepacker_opts) \*opts, int fd) | 通过一个给定的选项ImagePacker_Opts结构体,将输入JavaScript native层PixelMap对象或者ImageSource对象编码并输出到指定的文件中。 | 
103| int32_t [OH_ImagePacker_Release](#oh_imagepacker_release) ([ImagePacker_Native](#imagepacker_native) \*native) | 释放native层编码器对象[ImagePacker_Native](#imagepacker_native)。 | 
104| int32_t [OH_PixelMap_CreatePixelMap](#oh_pixelmap_createpixelmap) (napi_env env, [OhosPixelMapCreateOps](_ohos_pixel_map_create_ops.md) info, void \*buf, size_t len, napi_value \*res) | 创建**PixelMap**对象。  | 
105| int32_t [OH_PixelMap_CreatePixelMapWithStride](#oh_pixelmap_createpixelmapwithstride) (napi_env env, [OhosPixelMapCreateOps](_ohos_pixel_map_create_ops.md) info, void \*buf, size_t len, int32_t rowStride, napi_value \*res) | 创建**PixelMap**对象。当前只支持输入流为BGRA格式的流。pixelmap内存在RGBA格式下,默认为DMA内存(图片512\*512以上)。  | 
106| int32_t [OH_PixelMap_CreateAlphaPixelMap](#oh_pixelmap_createalphapixelmap) (napi_env env, napi_value source, napi_value \*alpha) | 根据Alpha通道的信息,来生成一个仅包含Alpha通道信息的**PixelMap**对象。  | 
107| [NativePixelMap](#nativepixelmap) \* [OH_PixelMap_InitNativePixelMap](#oh_pixelmap_initnativepixelmap) (napi_env env, napi_value source) | 初始化**NativePixelMap**对象。  | 
108| int32_t [OH_PixelMap_GetBytesNumberPerRow](#oh_pixelmap_getbytesnumberperrow) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*num) | 获取**PixelMap**对象每行字节数。  | 
109| int32_t [OH_PixelMap_GetIsEditable](#oh_pixelmap_getiseditable) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*editable) | 获取**PixelMap**对象是否可编辑的状态。  | 
110| int32_t [OH_PixelMap_IsSupportAlpha](#oh_pixelmap_issupportalpha) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*alpha) | 获取**PixelMap**对象是否支持Alpha通道。  | 
111| int32_t [OH_PixelMap_SetAlphaAble](#oh_pixelmap_setalphaable) (const [NativePixelMap](#nativepixelmap) \*native, int32_t alpha) | 设置**PixelMap**对象的Alpha通道。  | 
112| int32_t [OH_PixelMap_GetDensity](#oh_pixelmap_getdensity) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*density) | 获取**PixelMap**对象像素密度。  | 
113| int32_t [OH_PixelMap_SetDensity](#oh_pixelmap_setdensity) (const [NativePixelMap](#nativepixelmap) \*native, int32_t density) | 设置**PixelMap**对象像素密度。  | 
114| int32_t [OH_PixelMap_SetOpacity](#oh_pixelmap_setopacity) (const [NativePixelMap](#nativepixelmap) \*native, float opacity) | 设置**PixelMap**对象的透明度。  | 
115| int32_t [OH_PixelMap_Scale](#oh_pixelmap_scale) (const [NativePixelMap](#nativepixelmap) \*native, float x, float y) | 设置**PixelMap**对象的缩放。  | 
116| int32_t [OH_PixelMap_ScaleWithAntiAliasing](#oh_pixelmap_scalewithantialiasing) (const [NativePixelMap](#nativepixelmap) \*native, float x, float y, [OH_PixelMap_AntiAliasingLevel](#oh_pixelmap_antialiasinglevel) level) | 根据指定的缩放算法和输入的宽高对图片进行缩放。  | 
117| int32_t [OH_PixelMap_Translate](#oh_pixelmap_translate) (const [NativePixelMap](#nativepixelmap) \*native, float x, float y) | 设置**PixelMap**对象的偏移。  | 
118| int32_t [OH_PixelMap_Rotate](#oh_pixelmap_rotate) (const [NativePixelMap](#nativepixelmap) \*native, float angle) | 设置**PixelMap**对象的旋转。  | 
119| int32_t [OH_PixelMap_Flip](#oh_pixelmap_flip) (const [NativePixelMap](#nativepixelmap) \*native, int32_t x, int32_t y) | 设置**PixelMap**对象的翻转。  | 
120| int32_t [OH_PixelMap_Crop](#oh_pixelmap_crop) (const [NativePixelMap](#nativepixelmap) \*native, int32_t x, int32_t y, int32_t width, int32_t height) | 设置**PixelMap**对象的裁剪。  | 
121| int32_t [OH_PixelMap_GetImageInfo](#oh_pixelmap_getimageinfo) (const [NativePixelMap](#nativepixelmap) \*native, [OhosPixelMapInfos](_ohos_pixel_map_infos.md) \*info) | 获取**PixelMap**对象图像信息。  | 
122| int32_t [OH_PixelMap_AccessPixels](#oh_pixelmap_accesspixels) (const [NativePixelMap](#nativepixelmap) \*native, void \*\*addr) | 获取native **PixelMap** 对象数据的内存地址,并锁定该内存。  | 
123| int32_t [OH_PixelMap_UnAccessPixels](#oh_pixelmap_unaccesspixels) (const [NativePixelMap](#nativepixelmap) \*native) | 释放native **PixelMap**对象数据的内存锁,用于匹配方法[OH_PixelMap_AccessPixels](#oh_pixelmap_accesspixels)。  | 
124| int32_t [OH_GetImageInfo](#oh_getimageinfo) (napi_env env, napi_value value, [OhosPixelMapInfo](_o_h_o_s_1_1_media_1_1_ohos_pixel_map_info.md) \*info) | 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_o_h_o_s_1_1_media_1_1_ohos_pixel_map_info.md)结构中。  | 
125| int32_t [OH_AccessPixels](#oh_accesspixels) (napi_env env, napi_value value, void \*\*addrPtr) | 获取**PixelMap**对象数据的内存地址,并锁定该内存。  | 
126| int32_t [OH_UnAccessPixels](#oh_unaccesspixels) (napi_env env, napi_value value) | 释放**PixelMap**对象数据的内存锁, 用于匹配方法**OH_AccessPixels**。  | 
127| int32_t [OH_Image_Receiver_CreateImageReceiver](#oh_image_receiver_createimagereceiver) (napi_env env, struct [OhosImageReceiverInfo](_ohos_image_receiver_info.md) info, napi_value \*res) | 创建应用层 **ImageReceiver** 对象。  | 
128| [ImageReceiverNative](#imagereceivernative) \* [OH_Image_Receiver_InitImageReceiverNative](#oh_image_receiver_initimagereceivernative) (napi_env env, napi_value source) | 通过应用层**ImageReceiver**对象初始化native层[ImageReceiverNative](#imagereceivernative)对象。  | 
129| int32_t [OH_Image_Receiver_GetReceivingSurfaceId](#oh_image_receiver_getreceivingsurfaceid) (const [ImageReceiverNative](#imagereceivernative) \*native, char \*id, size_t len) | 通过[ImageReceiverNative](#imagereceivernative)获取receiver的id。  | 
130| int32_t [OH_Image_Receiver_ReadLatestImage](#oh_image_receiver_readlatestimage) (const [ImageReceiverNative](#imagereceivernative) \*native, napi_value \*image) | 通过[ImageReceiverNative](#imagereceivernative)获取最新的一张图片。  | 
131| int32_t [OH_Image_Receiver_ReadNextImage](#oh_image_receiver_readnextimage) (const [ImageReceiverNative](#imagereceivernative) \*native, napi_value \*image) | 通过[ImageReceiverNative](#imagereceivernative)获取下一张图片。  | 
132| int32_t [OH_Image_Receiver_On](#oh_image_receiver_on) (const [ImageReceiverNative](#imagereceivernative) \*native, [OH_Image_Receiver_On_Callback](#oh_image_receiver_on_callback) callback) | 注册一个[OH_Image_Receiver_On_Callback](#oh_image_receiver_on_callback)回调事件。每当接收新图片,该回调事件就会响应。  | 
133| int32_t [OH_Image_Receiver_GetSize](#oh_image_receiver_getsize) (const [ImageReceiverNative](#imagereceivernative) \*native, struct [OhosImageSize](_ohos_image_size.md) \*size) | 通过[ImageReceiverNative](#imagereceivernative)获取**ImageReceiver**的大小。  | 
134| int32_t [OH_Image_Receiver_GetCapacity](#oh_image_receiver_getcapacity) (const [ImageReceiverNative](#imagereceivernative) \*native, int32_t \*capacity) | 通过[ImageReceiverNative](#imagereceivernative)获取**ImageReceiver**的容量。  | 
135| int32_t [OH_Image_Receiver_GetFormat](#oh_image_receiver_getformat) (const [ImageReceiverNative](#imagereceivernative) \*native, int32_t \*format) | 通过[ImageReceiverNative](#imagereceivernative)获取**ImageReceiver**的格式。  | 
136| int32_t [OH_Image_Receiver_Release](#oh_image_receiver_release) ([ImageReceiverNative](#imagereceivernative) \*native) | 释放native层 [ImageReceiverNative](#imagereceivernative) 对象。 | 
137| int32_t [OH_ImageSource_Create](#oh_imagesource_create) (napi_env env, struct [OhosImageSource](_ohos_image_source.md) \*src, struct [OhosImageSourceOps](_ohos_image_source_ops.md) \*ops, napi_value \*res) | 通过给定的信息[OhosImageSource](_ohos_image_source.md)和[OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。  | 
138| int32_t [OH_ImageSource_CreateFromUri](#oh_imagesource_createfromuri) (napi_env env, char \*uri, size_t size, struct [OhosImageSourceOps](_ohos_image_source_ops.md) \*ops, napi_value \*res) | 通过给定的标识符URI和[OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。  | 
139| int32_t [OH_ImageSource_CreateFromFd](#oh_imagesource_createfromfd) (napi_env env, int32_t fd, struct [OhosImageSourceOps](_ohos_image_source_ops.md) \*ops, napi_value \*res) | 通过给定的文件描述符fd和[OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。  | 
140| int32_t [OH_ImageSource_CreateFromData](#oh_imagesource_createfromdata) (napi_env env, uint8_t \*data, size_t dataSize, struct [OhosImageSourceOps](_ohos_image_source_ops.md) \*ops, napi_value \*res) | 通过给定的图像源缓冲区资源data和[OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。  | 
141| int32_t [OH_ImageSource_CreateFromRawFile](#oh_imagesource_createfromrawfile) (napi_env env, RawFileDescriptor rawFile, struct [OhosImageSourceOps](_ohos_image_source_ops.md) \*ops, napi_value \*res) | 通过给定的资源描述符**RawFileDescriptor**和[OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。  | 
142| int32_t [OH_ImageSource_CreateIncremental](#oh_imagesource_createincremental) (napi_env env, struct [OhosImageSource](_ohos_image_source.md) \*source, struct [OhosImageSourceOps](_ohos_image_source_ops.md) \*ops, napi_value \*res) | 通过给定的infomations[OhosImageSource](_ohos_image_source.md)和[OhosImageSourceOps](_ohos_image_source_ops.md)结构,获取增量类型的JavaScript native层**ImageSource**对象。  | 
143| int32_t [OH_ImageSource_CreateIncrementalFromData](#oh_imagesource_createincrementalfromdata) (napi_env env, uint8_t \*data, size_t dataSize, struct [OhosImageSourceOps](_ohos_image_source_ops.md) \*ops, napi_value \*res) | 通过给定的图像源缓冲区资源data和[OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取增量类型的JavaScript Native API ImageSource对象,图像数据应通过OH_ImageSource_UpdateData更新。  | 
144| int32_t [OH_ImageSource_GetSupportedFormats](#oh_imagesource_getsupportedformats) (struct [OhosImageSourceSupportedFormatList](_ohos_image_source_supported_format_list.md) \*res) | 获取所有支持的解码格式元标记。  | 
145| [ImageSourceNative](#imagesourcenative) \* [OH_ImageSource_InitNative](#oh_imagesource_initnative) (napi_env env, napi_value source) | 从输入JavaScript native层**ImageSource** 对象中,转换成[ImageSourceNative](#imagesourcenative)值。  | 
146| int32_t [OH_ImageSource_CreatePixelMap](#oh_imagesource_createpixelmap) (const [ImageSourceNative](#imagesourcenative) \*native, struct [OhosImageDecodingOps](_ohos_image_decoding_ops.md) \*ops, napi_value \*res) | 通过一个给定的选项[OhosImageDecodingOps](_ohos_image_decoding_ops.md)结构体,从**ImageSource**中解码JavaScript native层**PixelMap**对象  | 
147| int32_t [OH_ImageSource_CreatePixelMapList](#oh_imagesource_createpixelmaplist) (const [ImageSourceNative](#imagesourcenative) \*native, struct [OhosImageDecodingOps](_ohos_image_decoding_ops.md) \*ops, napi_value \*res) | 通过一个给定的选项[OhosImageDecodingOps](_ohos_image_decoding_ops.md)结构体,从**ImageSource**中解码所有的JavaScript native层**PixelMap**对象列表  | 
148| int32_t [OH_ImageSource_GetDelayTime](#oh_imagesource_getdelaytime) (const [ImageSourceNative](#imagesourcenative) \*native, struct [OhosImageSourceDelayTimeList](_ohos_image_source_delay_time_list.md) \*res) | 从一些**ImageSource**(如GIF图像源)获取延迟时间列表。  | 
149| int32_t [OH_ImageSource_GetFrameCount](#oh_imagesource_getframecount) (const [ImageSourceNative](#imagesourcenative) \*native, uint32_t \*res) | 从**ImageSource**中获取帧计数。  | 
150| int32_t [OH_ImageSource_GetImageInfo](#oh_imagesource_getimageinfo) (const [ImageSourceNative](#imagesourcenative) \*native, int32_t index, struct [OhosImageSourceInfo](_ohos_image_source_info.md) \*info) | 通过索引从**ImageSource**获取图像源信息。  | 
151| int32_t [OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty) (const [ImageSourceNative](#imagesourcenative) \*native, struct [OhosImageSourceProperty](_ohos_image_source_property.md) \*key, struct [OhosImageSourceProperty](_ohos_image_source_property.md) \*value) | 通过关键字从**ImageSource**中获取图像源属性。  | 
152| int32_t [OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty) (const [ImageSourceNative](#imagesourcenative) \*native, struct [OhosImageSourceProperty](_ohos_image_source_property.md) \*key, struct [OhosImageSourceProperty](_ohos_image_source_property.md) \*value) | 通过关键字为**ImageSource**修改图像源属性。  | 
153| int32_t [OH_ImageSource_UpdateData](#oh_imagesource_updatedata) (const [ImageSourceNative](#imagesourcenative) \*native, struct [OhosImageSourceUpdateData](_ohos_image_source_update_data.md) \*data) | 为了增量类型的**ImageSource**更新源数据。  | 
154| int32_t [OH_ImageSource_Release](#oh_imagesource_release) ([ImageSourceNative](#imagesourcenative) \*native) | 释放native层图像源**ImageSourceNative**。  | 
155
156
157### 变量
158
159| 名称 | 描述 | 
160| -------- | -------- |
161| const char \* [OHOS_IMAGE_PROPERTY_BITS_PER_SAMPLE](#ohos_image_property_bits_per_sample) = "BitsPerSample" | 定义每个样本比特的图像属性关键字。  | 
162| const char \* [OHOS_IMAGE_PROPERTY_ORIENTATION](#ohos_image_property_orientation) = "Orientation" | 定义方向的图像属性关键字。  | 
163| const char \* [OHOS_IMAGE_PROPERTY_IMAGE_LENGTH](#ohos_image_property_image_length) = "ImageLength" | 定义图像长度的图像属性关键字。  | 
164| const char \* [OHOS_IMAGE_PROPERTY_IMAGE_WIDTH](#ohos_image_property_image_width) = "ImageWidth" | 定义图像宽度的图像属性关键字。  | 
165| const char \* [OHOS_IMAGE_PROPERTY_GPS_LATITUDE](#ohos_image_property_gps_latitude) = "GPSLatitude" | 定义GPS纬度的图像属性关键字。  | 
166| const char \* [OHOS_IMAGE_PROPERTY_GPS_LONGITUDE](#ohos_image_property_gps_longitude) = "GPSLongitude" | 定义GPS经度的图像属性关键字。  | 
167| const char \* [OHOS_IMAGE_PROPERTY_GPS_LATITUDE_REF](#ohos_image_property_gps_latitude_ref) = "GPSLatitudeRef" | 定义GPS纬度参考的图像属性关键字。  | 
168| const char \* [OHOS_IMAGE_PROPERTY_GPS_LONGITUDE_REF](#ohos_image_property_gps_longitude_ref) = "GPSLongitudeRef" | 定义GPS经度参考的图像属性关键字。  | 
169| const char \* [OHOS_IMAGE_PROPERTY_DATE_TIME_ORIGINAL](#ohos_image_property_date_time_original) = "DateTimeOriginal" | 定义初始日期时间的图像属性关键字。  | 
170| const char \* [OHOS_IMAGE_PROPERTY_EXPOSURE_TIME](#ohos_image_property_exposure_time) = "ExposureTime" | 定义曝光时间的图像属性关键字。  | 
171| const char \* [OHOS_IMAGE_PROPERTY_SCENE_TYPE](#ohos_image_property_scene_type) = "SceneType" | 定义场景类型的图像属性关键字。  | 
172| const char \* [OHOS_IMAGE_PROPERTY_ISO_SPEED_RATINGS](#ohos_image_property_iso_speed_ratings) = "ISOSpeedRatings" | 定义ISO速度等级的图像属性关键字。  | 
173| const char \* [OHOS_IMAGE_PROPERTY_F_NUMBER](#ohos_image_property_f_number) = "FNumber" | 定义FNumber的图像属性关键字。  | 
174| const char \* [OHOS_IMAGE_PROPERTY_COMPRESSED_BITS_PER_PIXEL](#ohos_image_property_compressed_bits_per_pixel) = "CompressedBitsPerPixel" | 定义每个像素的压缩比特的图像属性关键字。  | 
175| int32_t [OhosImageRegion::x](#x) | 起始x坐标,用pixels表示。  | 
176| int32_t [OhosImageRegion::y](#y) | 起始y坐标,用pixels表示。  | 
177| int32_t [OhosImageRegion::width](#width) | 宽度范围,用pixels表示。  | 
178| int32_t [OhosImageRegion::height](#height) | 高度范围,用pixels表示。  | 
179| int32_t [OhosImageSourceOps::density](#density-12) | 图像源像素密度。  | 
180| int32_t [OhosImageSourceOps::pixelFormat](#pixelformat-13) | 图像源像素格式,通常用于描述YUV缓冲区。  | 
181| struct [OhosImageSize](_ohos_image_size.md) [OhosImageSourceOps::size](#size-17) | 图像源像素宽高的大小。  | 
182| int8_t [OhosImageDecodingOps::editable](#editable) | 定义输出的像素位图是否可编辑。  | 
183| int32_t [OhosImageDecodingOps::pixelFormat](#pixelformat-23) | 定义输出的像素格式。  | 
184| int32_t [OhosImageDecodingOps::fitDensity](#fitdensity) | 定义解码目标的像素密度。  | 
185| uint32_t [OhosImageDecodingOps::index](#index) | 定义图像源解码指数。  | 
186| uint32_t [OhosImageDecodingOps::sampleSize](#samplesize) | 定义解码样本大小选项。  | 
187| uint32_t [OhosImageDecodingOps::rotate](#rotate) | 定义解码旋转选项。  | 
188| struct [OhosImageSize](_ohos_image_size.md) [OhosImageDecodingOps::size](#size-27) | 定义解码目标像素宽高的大小。  | 
189| struct [OhosImageRegion](_ohos_image_region.md) [OhosImageDecodingOps::region](#region) | 定义图像源解码的像素范围。  | 
190| int32_t [OhosImageSourceInfo::pixelFormat](#pixelformat-33) | 图像源像素格式,由 [OH_ImageSource_Create](#oh_imagesource_create)设置。  | 
191| int32_t [OhosImageSourceInfo::colorSpace](#colorspace) | 图像源色彩空间。  | 
192| int32_t [OhosImageSourceInfo::alphaType](#alphatype) | 图像源透明度类型。  | 
193| int32_t [OhosImageSourceInfo::density](#density-22) | 图像源密度,由[OH_ImageSource_Create](#oh_imagesource_create)设置。  | 
194| struct [OhosImageSize](_ohos_image_size.md) [OhosImageSourceInfo::size](#size-37) | 图像源像素宽高的大小。  | 
195| char \* [OhosImageSource::uri](#uri) = nullptr | 图像源资源标识符,接受文件资源或者base64资源。  | 
196| size_t [OhosImageSource::uriSize](#urisize) = 0 | 图像源资源长度。  | 
197| int32_t [OhosImageSource::fd](#fd) = -1 | 图像源文件资源描述符。  | 
198| uint8_t \* [OhosImageSource::buffer](#buffer-12) = nullptr | 图像源缓冲区资源,接受格式化包缓冲区或者base64缓冲区。  | 
199| size_t [OhosImageSource::bufferSize](#buffersize-12) = 0 | 图像源缓冲区资源大小。  | 
200| int32_t \* [OhosImageSourceDelayTimeList::delayTimeList](#delaytimelist) | 图像源延迟时间列表头地址。  | 
201| size_t [OhosImageSourceDelayTimeList::size](#size-47) = 0 | 图像源延迟时间列表大小。  | 
202| char \* [OhosImageSourceSupportedFormat::format](#format) = nullptr | 图像源支持的格式字符串头地址。  | 
203| size_t [OhosImageSourceSupportedFormat::size](#size-57) = 0 | 图像源支持的格式字符串大小。  | 
204| struct [OhosImageSourceSupportedFormat](_ohos_image_source_supported_format.md) \*\* [OhosImageSourceSupportedFormatList::supportedFormatList](#supportedformatlist) = nullptr | 图像源支持的格式字符串列表头地址。  | 
205| size_t [OhosImageSourceSupportedFormatList::size](#size-67) = 0 | 图像源支持的格式字符串列表大小。  | 
206| char \* [OhosImageSourceProperty::value](#value) = nullptr | 定义图像源属性键值字符串头地址。  | 
207| size_t [OhosImageSourceProperty::size](#size-77) = 0 | 定义图像源属性键值字符串大小。  | 
208| uint8_t \* [OhosImageSourceUpdateData::buffer](#buffer-22) = nullptr | 图像源更新数据缓冲区。  | 
209| size_t [OhosImageSourceUpdateData::bufferSize](#buffersize-22) = 0 | 图像源更新数据缓冲区大小。  | 
210| uint32_t [OhosImageSourceUpdateData::offset](#offset) = 0 | 图像源更新数据缓冲区的开端。  | 
211| uint32_t [OhosImageSourceUpdateData::updateLength](#updatelength) = 0 | 图像源更新数据缓冲区的更新数据长度。  | 
212| int8_t [OhosImageSourceUpdateData::isCompleted](#iscompleted) = 0 | 图像源更新数据在此节中完成。  | 
213
214
215## 类型定义说明
216
217
218### ImageNative
219
220```
221typedef struct ImageNative_ ImageNative
222```
223**描述**
224为图像接口定义native层图像对象。
225
226**起始版本:** 10
227
228
229### ImagePacker_Native
230
231```
232typedef struct ImagePacker_Native_ ImagePacker_Native
233```
234**描述**
235为编码器方法定义native层编码器对象。
236
237**起始版本:** 11
238
239
240### ImagePacker_Opts
241
242```
243typedef struct ImagePacker_Opts_ ImagePacker_Opts
244```
245**描述**
246定义图像编码选项的别名。
247
248**起始版本:** 11
249
250
251### ImageReceiverNative
252
253```
254typedef struct ImageReceiverNative_ ImageReceiverNative
255```
256**描述**
257用于定义ImageReceiverNative数据类型名称。
258
259**起始版本:** 10
260
261
262### ImageSourceNative
263
264```
265typedef struct ImageSourceNative_ ImageSourceNative
266```
267**描述**
268为图像源方法定义native层图像源对象。
269
270**系统能力:** SystemCapability.Multimedia.Image
271
272**起始版本:** 10
273
274
275### NativePixelMap
276
277```
278typedef struct NativePixelMap_ NativePixelMap
279```
280**描述**
281定义native层PixelMap数据类型名称。
282
283**起始版本:** 10
284
285
286### OH_Image_Receiver_On_Callback
287
288```
289typedef void(* OH_Image_Receiver_On_Callback) ()
290```
291**描述**
292定义native层图片的回调方法。
293
294**起始版本:** 10
295
296
297### OhosPixelMapInfos
298
299```
300typedef struct OhosPixelMapInfos
301```
302**描述**
303用于定义PixelMap的相关信息。
304
305**起始版本:** 10
306
307
308## 枚举类型说明
309
310
311### anonymous enum [1/3]
312
313```
314anonymous enum
315```
316**描述**
317图像格式枚举值。
318
319**起始版本:** 10
320
321| 枚举值 | 描述 | 
322| -------- | -------- |
323| OHOS_IMAGE_FORMAT_YCBCR_422_SP | YCBCR422 semi-planar 格式 | 
324| OHOS_IMAGE_FORMAT_JPEG | JPEG 编码格式 | 
325
326
327### anonymous enum [2/3]
328
329```
330anonymous enum
331```
332**描述**
333PixelMap透明度类型的枚举。
334
335**起始版本:** 10
336
337| 枚举值 | 描述 | 
338| -------- | -------- |
339| OHOS_PIXEL_MAP_ALPHA_TYPE_UNKNOWN  | 未知的格式   | 
340| OHOS_PIXEL_MAP_ALPHA_TYPE_OPAQUE  | 不透明的格式   | 
341| OHOS_PIXEL_MAP_ALPHA_TYPE_PREMUL  | 预乘的格式   | 
342| OHOS_PIXEL_MAP_ALPHA_TYPE_UNPREMUL  | 预除的格式   | 
343
344
345### anonymous enum [3/3]
346
347```
348anonymous enum
349```
350**描述**
351函数方法返回值的错误码的枚举。
352
353**废弃版本:** 10
354
355**起始版本:** 8
356
357| 枚举值 | 描述 | 
358| -------- | -------- |
359| OHOS_IMAGE_RESULT_SUCCESS | 成功的结果 | 
360| OHOS_IMAGE_RESULT_BAD_PARAMETER | 无效值 | 
361
362
363### anonymous enum [1/3]
364
365```
366anonymous enum
367```
368**描述**
369图像组成类型枚举值。
370
371**起始版本:** 10
372
373| 枚举值 | 描述 | 
374| -------- | -------- |
375| OHOS_IMAGE_COMPONENT_FORMAT_YUV_Y | 亮度信息 | 
376| OHOS_IMAGE_COMPONENT_FORMAT_YUV_U | 色度信息 | 
377| OHOS_IMAGE_COMPONENT_FORMAT_YUV_V | 色差值信息 | 
378| OHOS_IMAGE_COMPONENT_FORMAT_JPEG | Jpeg 格式 | 
379
380
381### anonymous enum [2/3]
382
383```
384anonymous enum
385```
386**描述**
387PixelMap 编辑类型的枚举。
388
389**起始版本:** 10
390
391| 枚举值 | 描述 | 
392| -------- | -------- |
393| OHOS_PIXEL_MAP_READ_ONLY  | 只读的格式   | 
394| OHOS_PIXEL_MAP_EDITABLE  | 可编辑的格式   | 
395
396
397### anonymous enum [3/3]
398
399```
400anonymous enum
401```
402**描述**
403Pixel格式的枚举。
404
405**废弃版本:** 10
406
407**起始版本:** 8
408
409| 枚举值 | 描述 | 
410| -------- | -------- |
411| OHOS_IMAGE_COMPONENT_FORMAT_YUV_Y  | 亮度信息   | 
412| OHOS_IMAGE_COMPONENT_FORMAT_YUV_U  | 色度信息   | 
413| OHOS_IMAGE_COMPONENT_FORMAT_YUV_V  | 色差值信息   | 
414| OHOS_IMAGE_COMPONENT_FORMAT_JPEG  | Jpeg 格式   | 
415
416
417### anonymous enum
418
419```
420anonymous enum
421```
422**描述**
423PixelMap缩放类型的枚举。
424
425**起始版本:** 10
426
427| 枚举值 | 描述 | 
428| -------- | -------- |
429| OHOS_PIXEL_MAP_SCALE_MODE_FIT_TARGET_SIZE  | 适应目标图片大小的格式   | 
430| OHOS_PIXEL_MAP_SCALE_MODE_CENTER_CROP  | 以中心进行缩放的格式   | 
431
432
433### IRNdkErrCode
434
435```
436enum IRNdkErrCode
437```
438**描述**
439可能被使用的接口返回值的枚举。
440
441**起始版本:** 10
442
443
444| 枚举值 | 描述 | 
445| -------- | -------- |
446| IMAGE_RESULT_SUCCESS | 操作成功 | 
447| IMAGE_RESULT_BAD_PARAMETER | 无效参数 | 
448| IMAGE_RESULT_IMAGE_RESULT_BASE | 操作失败 | 
449| IMAGE_RESULT_ERR_IPC | ipc 错误 | 
450| IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST | 共享内存失败 | 
451| IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL | 共享内存数据异常 | 
452| IMAGE_RESULT_DECODE_ABNORMAL | 图像解码失败 | 
453| IMAGE_RESULT_DATA_ABNORMAL | 图像输入数据异常 | 
454| IMAGE_RESULT_MALLOC_ABNORMAL | 图像内存分配异常 | 
455| IMAGE_RESULT_DATA_UNSUPPORT | 图像类型不支持 | 
456| IMAGE_RESULT_INIT_ABNORMAL | 图像初始化失败 | 
457| IMAGE_RESULT_GET_DATA_ABNORMAL | 图像获取数据错误 | 
458| IMAGE_RESULT_TOO_LARGE | 图像数据过大 | 
459| IMAGE_RESULT_TRANSFORM | 图像转换错误 | 
460| IMAGE_RESULT_COLOR_CONVERT | 图像颜色转换错误 | 
461| IMAGE_RESULT_CROP | 裁剪错误 | 
462| IMAGE_RESULT_SOURCE_DATA | 图像源数据错误 | 
463| IMAGE_RESULT_SOURCE_DATA_INCOMPLETE | 图像源数据不完整 | 
464| IMAGE_RESULT_MISMATCHED_FORMAT | 图像格式不匹配 | 
465| IMAGE_RESULT_UNKNOWN_FORMAT | 图像未知格式 | 
466| IMAGE_RESULT_SOURCE_UNRESOLVED | 图像源未解析 | 
467| IMAGE_RESULT_INVALID_PARAMETER | 图像无效参数 | 
468| IMAGE_RESULT_DECODE_FAILED | 解码失败 | 
469| IMAGE_RESULT_PLUGIN_REGISTER_FAILED | 注册插件失败 | 
470| IMAGE_RESULT_PLUGIN_CREATE_FAILED | 创建插件失败 | 
471| IMAGE_RESULT_ENCODE_FAILED | 图像编码失败 | 
472| IMAGE_RESULT_ADD_PIXEL_MAP_FAILED | 图像添加像素位图失败 | 
473| IMAGE_RESULT_HW_DECODE_UNSUPPORT | 图像硬解码不支持 | 
474| IMAGE_RESULT_DECODE_HEAD_ABNORMAL | 图像头解码失败 | 
475| IMAGE_RESULT_DECODE_EXIF_UNSUPPORT | 图像解码EXIF不支持 | 
476| IMAGE_RESULT_PROPERTY_NOT_EXIST | 图像属性不存在 | 
477| IMAGE_RESULT_MEDIA_DATA_UNSUPPORT | 媒体类型不支持 | 
478| IMAGE_RESULT_MEDIA_TOO_LARGE | 媒体数据过大 | 
479| IMAGE_RESULT_MEDIA_MALLOC_FAILED | 媒体分配内存失败 | 
480| IMAGE_RESULT_MEDIA_END_OF_STREAM | 媒体数据流结束失败 | 
481| IMAGE_RESULT_MEDIA_IO_ABNORMAL | 媒体输入输出流异常 | 
482| IMAGE_RESULT_MEDIA_MALFORMED | 媒体功能异常 | 
483| IMAGE_RESULT_MEDIA_BUFFER_TOO_SMALL | 媒体数据过小错误 | 
484| IMAGE_RESULT_MEDIA_OUT_OF_RANGE | 媒体超出范围错误 | 
485| IMAGE_RESULT_MEDIA_STATUS_ABNORMAL | 媒体状态异常错误 | 
486| IMAGE_RESULT_MEDIA_VALUE_INVALID | 媒体值无效 | 
487| IMAGE_RESULT_MEDIA_NULL_POINTER | 媒体操作失败 | 
488| IMAGE_RESULT_MEDIA_INVALID_OPERATION | 媒体操作无效 | 
489| IMAGE_RESULT_MEDIA_ERR_PLAYER_NOT_INIT | 媒体初始化异常 | 
490| IMAGE_RESULT_MEDIA_EARLY_PREPARE | 媒体过早预处理 | 
491| IMAGE_RESULT_MEDIA_SEEK_ERR | 媒体查找失败 | 
492| IMAGE_RESULT_MEDIA_PERMISSION_DENIED | 媒体权限拒绝 | 
493| IMAGE_RESULT_MEDIA_DEAD_OBJECT | 媒体对象注销 | 
494| IMAGE_RESULT_MEDIA_TIMED_OUT | 媒体超时 | 
495| IMAGE_RESULT_MEDIA_TRACK_NOT_ALL_SUPPORTED | 媒体能力不支持 | 
496| IMAGE_RESULT_MEDIA_ADAPTER_INIT_FAILED | 媒体适配器初始化失败 | 
497| IMAGE_RESULT_MEDIA_WRITE_PARCEL_FAIL | 写入parcel失败 | 
498| IMAGE_RESULT_MEDIA_READ_PARCEL_FAIL | 读取parcel失败 | 
499| IMAGE_RESULT_MEDIA_NO_AVAIL_BUFFER | 无效数据 | 
500| IMAGE_RESULT_MEDIA_INVALID_PARAM | 媒体接口发现无效参数 | 
501| IMAGE_RESULT_MEDIA_CODEC_ADAPTER_NOT_EXIST | 媒体代码适配器不存在 | 
502| IMAGE_RESULT_MEDIA_CREATE_CODEC_ADAPTER_FAILED | 媒体创建代码适配器失败 | 
503| IMAGE_RESULT_MEDIA_CODEC_ADAPTER_NOT_INIT | 媒体代码适配器未初始化 | 
504| IMAGE_RESULT_MEDIA_ZCODEC_CREATE_FAILED | 媒体代码创建失败 | 
505| IMAGE_RESULT_MEDIA_ZCODEC_NOT_EXIST | 媒体代码不存在 | 
506| IMAGE_RESULT_MEDIA_JNI_CLASS_NOT_EXIST | 媒体JNI层类不存在 | 
507| IMAGE_RESULT_MEDIA_JNI_METHOD_NOT_EXIST | 媒体JNI层方法不存在 | 
508| IMAGE_RESULT_MEDIA_JNI_NEW_OBJ_FAILED | 媒体JNI层创建对象失败 | 
509| IMAGE_RESULT_MEDIA_JNI_COMMON_ERROR | 媒体JNI层异常 | 
510| IMAGE_RESULT_MEDIA_DISTRIBUTE_NOT_SUPPORT | 媒体不支持分布 | 
511| IMAGE_RESULT_MEDIA_SOURCE_NOT_SET | 媒体源未设置 | 
512| IMAGE_RESULT_MEDIA_RTSP_ADAPTER_NOT_INIT | 媒体rtsp适配器未初始化 | 
513| IMAGE_RESULT_MEDIA_RTSP_ADAPTER_NOT_EXIST | 媒体rtsp适配器不存在 | 
514| IMAGE_RESULT_MEDIA_RTSP_SURFACE_UNSUPPORT | 媒体不支持rtsp surface | 
515| IMAGE_RESULT_MEDIA_RTSP_CAPTURE_NOT_INIT | 媒体rtsp capture初始化失败 | 
516| IMAGE_RESULT_MEDIA_RTSP_SOURCE_URL_INVALID | 媒体rtsp源路径无效 | 
517| IMAGE_RESULT_MEDIA_RTSP_VIDEO_TRACK_NOT_FOUND | 媒体rtsp未发现视频能力 | 
518| IMAGE_RESULT_MEDIA_RTSP_CAMERA_NUM_REACH_MAX | rtsp相机数量达到最大数量 | 
519| IMAGE_RESULT_MEDIA_SET_VOLUME | 媒体设置卷失败 | 
520| IMAGE_RESULT_MEDIA_NUMBER_OVERFLOW | 媒体操作次数溢出 | 
521| IMAGE_RESULT_MEDIA_DIS_PLAYER_UNSUPPORTED | 媒体分布式播放器不支持 | 
522| IMAGE_RESULT_MEDIA_DENCODE_ICC_FAILED | 图像解码ICC失败 | 
523| IMAGE_RESULT_MEDIA_ENCODE_ICC_FAILED | 图像编码ICC失败 | 
524| IMAGE_RESULT_MEDIA_READ_PIXELMAP_FAILED | 读取像素位图失败 | 
525| IMAGE_RESULT_MEDIA_WRITE_PIXELMAP_FAILED | 写入像素位图失败 | 
526| IMAGE_RESULT_MEDIA_PIXELMAP_NOT_ALLOW_MODIFY | 像素位图不允许修改 | 
527| IMAGE_RESULT_MEDIA_CONFIG_FAILED | 配置失败 | 
528| IMAGE_RESULT_JNI_ENV_ABNORMAL | JNI环境异常 | 
529| IMAGE_RESULT_SURFACE_GRALLOC_BUFFER_FAILED | surface申请内存失败 | 
530| IMAGE_RESULT_CREATE_SURFACE_FAILED | 创建surface失败 | 
531| IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED | 从surface获取参数失败 | 
532| IMAGE_RESULT_GET_SURFACE_FAILED | 获取surface失败 | 
533| IMAGE_RESULT_SURFACE_ACQUIRE_BUFFER_FAILED | 申请内存失败 | 
534| IMAGE_RESULT_SURFACE_REQUEST_BUFFER_FAILED | 申请内存失败 | 
535| IMAGE_RESULT_REGISTER_LISTENER_FAILED | 注册监听失败 | 
536| IMAGE_RESULT_REGISTER_BUFFER_FAILED | 注册内存失败 | 
537| IMAGE_RESULT_FREAD_FAILED | 读取文件失败 | 
538| IMAGE_RESULT_PEEK_FAILED | 检测文件失败 | 
539| IMAGE_RESULT_SEEK_FAILED | 查找文件失败 | 
540| IMAGE_RESULT_STREAM_SIZE_ERROR | 数据流损坏 | 
541| IMAGE_RESULT_FILE_FD_ERROR | 文件描述符损坏 | 
542| IMAGE_RESULT_FILE_DAMAGED | 文件损坏 | 
543| IMAGE_RESULT_CREATE_DECODER_FAILED | 创建解码失败 | 
544| IMAGE_RESULT_CREATE_ENCODER_FAILED | 创建编码失败 | 
545| IMAGE_RESULT_CHECK_FORMAT_ERROR | 检查格式失败 | 
546| IMAGE_RESULT_THIRDPART_SKIA_ERROR | skia解码失败 | 
547| IMAGE_RESULT_HW_DECODE_FAILED | 硬解码失败 | 
548| IMAGE_RESULT_ALLOCATER_TYPE_ERROR | 内存类型校验失败 | 
549| IMAGE_RESULT_ALPHA_TYPE_ERROR | 透明度类型失败 | 
550| IMAGE_RESULT_INDEX_INVALID | 参数无效 | 
551| IMAGE_RESULT_MEDIA_UNKNOWN | 媒体未知错误 | 
552
553
554### OH_PixelMap_AntiAliasingLevel
555
556```
557enum OH_PixelMap_AntiAliasingLevel
558```
559**描述**
560Pixelmap缩放时采用的缩放算法。
561
562**起始版本:** 12
563
564| 枚举值 | 描述 | 
565| -------- | -------- |
566| OH_PixelMap_AntiAliasing_NONE  | 最近邻缩放算法。   | 
567| OH_PixelMap_AntiAliasing_LOW  | 双线性缩放算法。   | 
568| OH_PixelMap_AntiAliasing_MEDIUM  | 双线性缩放算法,同时开启mipmap。   | 
569| OH_PixelMap_AntiAliasing_HIGH  | cubic缩放算法。   | 
570
571
572## 函数说明
573
574
575### OH_AccessPixels()
576
577```
578int32_t OHOS::Media::OH_AccessPixels (napi_env env, napi_value value, void ** addrPtr )
579```
580**描述**
581获取**PixelMap**对象数据的内存地址,并锁定该内存。
582
583函数执行成功后,**\*addrPtr**就是获取的待访问的内存地址。访问操作完成后,必须要使用**OH_UnAccessPixels**来释放锁,否则的话资源无法被释放。 待解锁后,内存地址就不可以再被访问和操作。
584
585**废弃版本:** 10
586
587**起始版本:** 8
588
589**参数:**
590
591| 名称 | 描述 | 
592| -------- | -------- |
593| env | napi的环境指针。  | 
594| value | 应用层的 **PixelMap** 对象。  | 
595| addrPtr | 用于指向的内存地址的指针对象。  | 
596
597**参见:**
598
599UnAccessPixels
600
601**返回:**
602
603操作成功则返回OHOS_IMAGE_RESULT_SUCCESS;如果操作失败,则返回错误码。
604
605
606### OH_GetImageInfo()
607
608```
609int32_t OH_GetImageInfo (napi_env env, napi_value value, OhosPixelMapInfo * info )
610```
611**描述**
612获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_o_h_o_s_1_1_media_1_1_ohos_pixel_map_info.md)结构中。
613
614**废弃版本:** 10
615
616**起始版本:** 8
617
618**参数:**
619
620| 名称 | 描述 | 
621| -------- | -------- |
622| env | napi的环境指针。  | 
623| value | 应用层的 **PixelMap** 对象。  | 
624| info | 用于保存信息的指针对象。 更多细节, 参看 [OhosPixelMapInfo](_o_h_o_s_1_1_media_1_1_ohos_pixel_map_info.md)。  | 
625
626**返回:**
627
628如果获取并保存信息成功,则返回**0**; 如果操作失败,则返回错误码。
629
630**参见:**
631
632[OhosPixelMapInfo](_o_h_o_s_1_1_media_1_1_ohos_pixel_map_info.md)
633
634
635### OH_Image_ClipRect()
636
637```
638int32_t OH_Image_ClipRect (const ImageNative * native, struct OhosImageRect * rect )
639```
640**描述**
641获取native **ImageNative** 对象 [OhosImageRect](_o_h_o_s_1_1_media_1_1_ohos_image_rect.md) 信息。
642
643**起始版本:** 10
644
645**参数:**
646
647| 名称 | 描述 | 
648| -------- | -------- |
649| native | 表示指向 **ImageNative** native层对象的指针。  | 
650| rect | 表示作为转换结果的 [OhosImageRect](_o_h_o_s_1_1_media_1_1_ohos_image_rect.md) 对象指针。  | 
651
652**返回:**
653
654参考[IRNdkErrCode](#irndkerrcode-1)。
655
656如果操作成功返回IMAGE_RESULT_SUCCESS;
657
658如果JNI环境异常返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
659
660如果参数无效返回IMAGE_RESULT_INVALID_PARAMETER;
661
662如果从surface获取参数失败返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
663
664如果参数错误返回IMAGE_RESULT_BAD_PARAMETER 。
665
666**参见:**
667
668[ImageNative](image.md#imagenative), [OhosImageRect](_o_h_o_s_1_1_media_1_1_ohos_image_rect.md)
669
670
671### OH_Image_Format()
672
673```
674int32_t OH_Image_Format (const ImageNative * native, int32_t * format )
675```
676**描述**
677获取native **ImageNative** 对象的图像格式。
678
679**起始版本:** 10
680
681**参数:**
682
683| 名称 | 描述 | 
684| -------- | -------- |
685| native | 表示 **ImageNative** native对象的指针。  | 
686| format | 表示作为转换结果的图像格式对象的指针。  | 
687
688**返回:**
689
690参考[IRNdkErrCode](#irndkerrcode-1)。
691
692如果操作成功返回IMAGE_RESULT_SUCCESS;
693
694如果JNI环境异常返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
695
696如果参数无效返回IMAGE_RESULT_INVALID_PARAMETER;
697
698如果从surface获取参数失败返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
699
700如果参数错误返回IMAGE_RESULT_BAD_PARAMETER 。
701
702
703**参见:**
704
705[ImageNative](image.md#imagenative)
706
707
708### OH_Image_GetComponent()
709
710```
711int32_t OH_Image_GetComponent (const ImageNative * native, int32_t componentType, struct OhosImageComponent * componentNative )
712```
713**描述**
714从 native **ImageNative** 对象中获取 [OhosImageComponent](_o_h_o_s_1_1_media_1_1_ohos_image_component.md)。
715
716**起始版本:** 10
717
718**参数:**
719
720| 名称 | 描述 | 
721| -------- | -------- |
722| native | 表示 **ImageNative** native对象的指针。  | 
723| componentType | 表示所需组件的组件类型。  | 
724| componentNative | 表示转换结果的 [OhosImageComponent](_o_h_o_s_1_1_media_1_1_ohos_image_component.md) 对象的指针。  | 
725
726**返回:**
727
728参考[IRNdkErrCode](#irndkerrcode-1)。
729
730如果操作成功返回IMAGE_RESULT_SUCCESS;
731
732如果JNI环境异常返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
733
734如果参数无效返回IMAGE_RESULT_INVALID_PARAMETER;
735
736如果从surface获取参数失败返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
737
738如果参数错误返回IMAGE_RESULT_BAD_PARAMETER 。
739
740**参见:**
741
742[ImageNative](image.md#imagenative), [OhosImageComponent](_o_h_o_s_1_1_media_1_1_ohos_image_component.md)
743
744
745### OH_Image_InitImageNative()
746
747```
748ImageNative* OH_Image_InitImageNative (napi_env env, napi_value source )
749```
750**描述**
751从输入的JavaScript Native API **图像** 对象中解析 native **ImageNative** 对象。
752
753**起始版本:** 10
754
755**参数:**
756
757| 名称 | 描述 | 
758| -------- | -------- |
759| env | 表示指向 JNI 环境的指针。  | 
760| source | 表示 JavaScript Native API **图像** 对象。  | 
761
762**返回:**
763
764如果操作成果返回 **ImageNative** 指针对象,如果操作失败返回空指针。
765
766**参见:**
767
768[ImageNative](image.md#imagenative), [OH_Image_Release](image.md#oh_image_release)
769
770
771### OH_Image_Receiver_CreateImageReceiver()
772
773```
774int32_t OH_Image_Receiver_CreateImageReceiver (napi_env env, struct OhosImageReceiverInfo info, napi_value * res )
775```
776**描述**
777创建应用层 **ImageReceiver** 对象。
778
779**起始版本:** 10
780
781**参数:**
782
783| 名称 | 描述 | 
784| -------- | -------- |
785| env | napi的环境指针。  | 
786| info | **ImageReceiver** 数据设置项。  | 
787| res | 应用层的 **ImageReceiver** 对象的指针。  | 
788
789**返回:**
790
791参考[IRNdkErrCode](#irndkerrcode-1)。
792
793如果操作成功则返回IMAGE_RESULT_SUCCESS;
794
795如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
796
797如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
798
799如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
800
801从surface获取参数失败则返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
802
803如果创建surface失败则返回IMAGE_RESULT_CREATE_SURFACE_FAILED;
804
805如果surface分配内存失败则返回IMAGE_RESULT_SURFACE_GRALLOC_BUFFER_FAILED;
806
807如果获取surface失败则返回IMAGE_RESULT_GET_SURFACE_FAILED;
808
809如果媒体rtsp surface不支持则返回IMAGE_RESULT_MEDIA_RTSP_SURFACE_UNSUPPORT;
810
811如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT;
812
813如果媒体类型不支持失败则返回IMAGE_RESULT_MEDIA_DATA_UNSUPPORT。
814
815
816**参见:**
817
818[OhosImageReceiverInfo](_ohos_image_receiver_info.md)
819
820
821### OH_Image_Receiver_GetCapacity()
822
823```
824int32_t OH_Image_Receiver_GetCapacity (const ImageReceiverNative * native, int32_t * capacity )
825```
826**描述**
827通过[ImageReceiverNative](#imagereceivernative)获取**ImageReceiver**的容量。
828
829**起始版本:** 10
830
831**参数:**
832
833| 名称 | 描述 | 
834| -------- | -------- |
835| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
836| capacity | 作为结果的指向容量的指针。  | 
837
838**返回:**
839
840参考[IRNdkErrCode](#irndkerrcode-1)。
841
842如果操作成功则返回IMAGE_RESULT_SUCCESS;
843
844如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
845
846如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
847
848如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
849
850如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT。
851
852
853**参见:**
854
855[ImageReceiverNative](#imagereceivernative), [OhosImageSize](_ohos_image_size.md)
856
857
858### OH_Image_Receiver_GetFormat()
859
860```
861int32_t OH_Image_Receiver_GetFormat (const ImageReceiverNative * native, int32_t * format )
862```
863**描述**
864通过[ImageReceiverNative](#imagereceivernative)获取**ImageReceiver**的格式。
865
866**起始版本:** 10
867
868**参数:**
869
870| 名称 | 描述 | 
871| -------- | -------- |
872| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
873| format | 作为结果的指向格式的指针。  | 
874
875**返回:**
876
877参考[IRNdkErrCode](#irndkerrcode-1)。
878
879如果操作成功则返回IMAGE_RESULT_SUCCESS;
880
881如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
882
883如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
884
885如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
886
887如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT。
888
889
890**参见:**
891
892[ImageReceiverNative](#imagereceivernative)
893
894
895### OH_Image_Receiver_GetReceivingSurfaceId()
896
897```
898int32_t OH_Image_Receiver_GetReceivingSurfaceId (const ImageReceiverNative * native, char * id, size_t len )
899```
900**描述**
901通过[ImageReceiverNative](#imagereceivernative)获取receiver的id。
902
903**起始版本:** 10
904
905**参数:**
906
907| 名称 | 描述 | 
908| -------- | -------- |
909| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
910| id | 指向字符缓冲区的指针,用于获取字符串的id。  | 
911| len | **id**所对应的字符缓冲区的大小。  | 
912
913**返回:**
914
915参考[IRNdkErrCode](#irndkerrcode-1)。
916
917如果操作成功则返回IMAGE_RESULT_SUCCESS;
918
919如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
920
921如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
922
923如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
924
925从surface获取参数失败则返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
926
927如果获取surface失败则返回IMAGE_RESULT_GET_SURFACE_FAILED;
928
929如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT;
930
931如果媒体类型不支持失败则返回IMAGE_RESULT_MEDIA_DATA_UNSUPPORT。
932
933
934**参见:**
935
936[ImageReceiverNative](#imagereceivernative)
937
938
939### OH_Image_Receiver_GetSize()
940
941```
942int32_t OH_Image_Receiver_GetSize (const ImageReceiverNative * native, struct OhosImageSize * size )
943```
944**描述**
945通过[ImageReceiverNative](#imagereceivernative)获取**ImageReceiver**的大小。
946
947**起始版本:** 10
948
949**参数:**
950
951| 名称 | 描述 | 
952| -------- | -------- |
953| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
954| size | 作为结果的[OhosImageSize](_ohos_image_size.md)指针。  | 
955
956**返回:**
957
958参考[IRNdkErrCode](#irndkerrcode-1)。
959
960如果操作成功则返回IMAGE_RESULT_SUCCESS;
961
962如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
963
964如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
965
966如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
967
968如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT。
969
970**参见:**
971
972[ImageReceiverNative](#imagereceivernative), [OH_Image_Receiver_On_Callback](#oh_image_receiver_on_callback)
973
974
975### OH_Image_Receiver_InitImageReceiverNative()
976
977```
978ImageReceiverNative* OH_Image_Receiver_InitImageReceiverNative (napi_env env, napi_value source )
979```
980**描述**
981通过应用层**ImageReceiver**对象初始化native层[ImageReceiverNative](#imagereceivernative)对象。
982
983**起始版本:** 10
984
985**参数:**
986
987| 名称 | 描述 | 
988| -------- | -------- |
989| env | napi的环境指针。  | 
990| source | napi的 **ImageReceiver** 对象。  | 
991
992**返回:**
993
994操作成功则返回 [ImageReceiverNative](#imagereceivernative) 指针;如果操作失败,则返回nullptr。
995
996**参见:**
997
998[ImageReceiverNative](#imagereceivernative), [OH_Image_Receiver_Release](#oh_image_receiver_release)
999
1000
1001### OH_Image_Receiver_On()
1002
1003```
1004int32_t OH_Image_Receiver_On (const ImageReceiverNative * native, OH_Image_Receiver_On_Callback callback )
1005```
1006**描述**
1007注册一个[OH_Image_Receiver_On_Callback](#oh_image_receiver_on_callback)回调事件。每当接收新图片,该回调事件就会响应。
1008
1009**起始版本:** 10
1010
1011**参数:**
1012
1013| 名称 | 描述 | 
1014| -------- | -------- |
1015| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
1016| callback | [OH_Image_Receiver_On_Callback](#oh_image_receiver_on_callback)事件的回调函数。  | 
1017
1018**返回:**
1019
1020参考[IRNdkErrCode](#irndkerrcode-1)。
1021
1022如果操作成功则返回IMAGE_RESULT_SUCCESS;
1023
1024如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
1025
1026如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1027
1028如果参数无效或从surface获取参数失败则返回IMAGE_RESULT_INVALID_PARAMETER;
1029
1030如果获取surface失败则返回IMAGE_RESULT_GET_SURFACE_FAILED;
1031
1032如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT;
1033
1034如果注册监听失败则返回IMAGE_RESULT_REGISTER_LISTENER_FAILED;
1035
1036如果注册内存失败则返回IMAGE_RESULT_REGISTER_BUFFER_FAILED。
1037
1038
1039**参见:**
1040
1041[ImageReceiverNative](#imagereceivernative)
1042
1043
1044### OH_Image_Receiver_ReadLatestImage()
1045
1046```
1047int32_t OH_Image_Receiver_ReadLatestImage (const ImageReceiverNative * native, napi_value * image )
1048```
1049**描述**
1050通过[ImageReceiverNative](#imagereceivernative)获取最新的一张图片。
1051
1052**起始版本:** 10
1053
1054**参数:**
1055
1056| 名称 | 描述 | 
1057| -------- | -------- |
1058| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
1059| image | 获取到的应用层的 **Image** 指针对象。  | 
1060
1061**返回:**
1062
1063参考[IRNdkErrCode](#irndkerrcode-1)。
1064
1065如果操作成功则返回IMAGE_RESULT_SUCCESS;
1066
1067如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
1068
1069如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1070
1071如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
1072
1073如果从surface获取参数失败返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
1074
1075如果创建surface失败则返回IMAGE_RESULT_CREATE_SURFACE_FAILED;
1076
1077如果surface分配内存失败则返回IMAGE_RESULT_SURFACE_GRALLOC_BUFFER_FAILED;
1078
1079如果获取surface失败则返回IMAGE_RESULT_GET_SURFACE_FAILED;
1080
1081如果媒体rtsp surface不支持则返回IMAGE_RESULT_MEDIA_RTSP_SURFACE_UNSUPPORT;
1082
1083如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT;
1084
1085如果申请内存失败则返回IMAGE_RESULT_SURFACE_REQUEST_BUFFER_FAILED。
1086
1087
1088**参见:**
1089
1090[ImageReceiverNative](#imagereceivernative)
1091
1092
1093### OH_Image_Receiver_ReadNextImage()
1094
1095```
1096int32_t OH_Image_Receiver_ReadNextImage (const ImageReceiverNative * native, napi_value * image )
1097```
1098**描述**
1099通过[ImageReceiverNative](#imagereceivernative)获取下一张图片。
1100
1101**起始版本:** 10
1102
1103**参数:**
1104
1105| 名称 | 描述 | 
1106| -------- | -------- |
1107| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
1108| image | 读取到的应用层的 **Image** 指针对象。  | 
1109
1110**返回:**
1111
1112参考[IRNdkErrCode](#irndkerrcode-1)。
1113
1114如果操作成功则返回IMAGE_RESULT_SUCCESS;
1115
1116如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
1117
1118如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1119
1120如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
1121
1122如果从surface获取参数失败返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
1123
1124如果创建surface失败则返回IMAGE_RESULT_CREATE_SURFACE_FAILED;
1125
1126如果surface分配内存失败则返回IMAGE_RESULT_SURFACE_GRALLOC_BUFFER_FAILED;
1127
1128如果获取surface失败则返回IMAGE_RESULT_GET_SURFACE_FAILED;
1129
1130如果媒体rtsp surface不支持则返回IMAGE_RESULT_MEDIA_RTSP_SURFACE_UNSUPPORT;
1131
1132如果图像类型不支持失败则返回IMAGE_RESULT_DATA_UNSUPPORT;
1133
1134如果申请内存失败则返回IMAGE_RESULT_SURFACE_REQUEST_BUFFER_FAILED。
1135
1136**参见:**
1137
1138[ImageReceiverNative](#imagereceivernative)
1139
1140
1141### OH_Image_Receiver_Release()
1142
1143```
1144int32_t OH_Image_Receiver_Release (ImageReceiverNative * native)
1145```
1146**描述**
1147释放native层 [ImageReceiverNative](#imagereceivernative) 对象。注意: 此方法不能释放应用层**ImageReceiver**对象。
1148
1149**起始版本:** 10
1150
1151**参数:**
1152
1153| 名称 | 描述 | 
1154| -------- | -------- |
1155| native | native层的[ImageReceiverNative](#imagereceivernative)指针。  | 
1156
1157**返回:**
1158
1159参考[IRNdkErrCode](#irndkerrcode-1)。
1160
1161如果操作成功则返回IMAGE_RESULT_SUCCESS;
1162
1163如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
1164
1165如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1166
1167如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER。
1168
1169
1170**参见:**
1171
1172[ImageReceiverNative](#imagereceivernative)
1173
1174
1175### OH_Image_Release()
1176
1177```
1178int32_t OH_Image_Release (ImageNative * native)
1179```
1180**描述**
1181释放 **ImageNative** native对象。 Note: 这个方法无法释放 JavaScript Native API **Image** 对象, 而是释放被 **OH_Image_InitImageNative** 解析的 **ImageNative** native 对象。
1182
1183**起始版本:** 10
1184
1185**参数:**
1186
1187| 名称 | 描述 | 
1188| -------- | -------- |
1189| native | 表示 **ImageNative** native对象的指针。  | 
1190
1191**返回:**
1192
1193参考[IRNdkErrCode](#irndkerrcode-1)。
1194
1195如果操作成功返回IMAGE_RESULT_SUCCESS;
1196
1197如果JNI环境异常返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1198
1199如果参数无效返回IMAGE_RESULT_INVALID_PARAMETER;
1200
1201如果参数错误返回IMAGE_RESULT_BAD_PARAMETER。
1202
1203**参见:**
1204
1205[ImageNative](image.md#imagenative), [OH_Image_InitImageNative](image.md#oh_image_initimagenative)
1206
1207
1208### OH_Image_Size()
1209
1210```
1211int32_t OH_Image_Size (const ImageNative * native, struct OhosImageSize * size )
1212```
1213**描述**
1214获取native **ImageNative** 对象的 [OhosImageSize](_ohos_image_size.md) 信息。如果[ImageNative](image.md#imagenative) 对象所存储的是相机预览流数据,即YUV图像数据,那么获取到的[OhosImageSize](_ohos_image_size.md)中的宽高分别对应YUV图像的宽高;如果[ImageNative](image.md#imagenative) 对象所存储的是相机拍照流数据,即JPEG图像,由于已经是编码后的数据,[OhosImageSize](_ohos_image_size.md)中的宽等于JPEG数据大小,高等于1。[ImageNative](image.md#imagenative) 对象所存储的数据是预览流还是拍照流,取决于应用将receiver中的surfaceId传给相机的previewOutput还是captureOutput。
1215
1216**起始版本:** 10
1217
1218**参数:**
1219
1220| 名称 | 描述 | 
1221| -------- | -------- |
1222| native | 表示 **ImageNative** native对象的指针。  | 
1223| size | 表示作为转换结果的 [OhosImageSize](_ohos_image_size.md) 对象的指针。  | 
1224
1225**返回:**
1226
1227参考[IRNdkErrCode](#irndkerrcode-1)。
1228
1229如果操作成功返回IMAGE_RESULT_SUCCESS;
1230
1231如果JNI环境异常返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1232
1233如果参数无效返回IMAGE_RESULT_INVALID_PARAMETER;
1234
1235如果从surface获取参数失败返回IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED;
1236
1237如果参数错误返回IMAGE_RESULT_BAD_PARAMETER。
1238
1239**参见:**
1240
1241[ImageNative](image.md#imagenative), [OhosImageSize](_ohos_image_size.md)
1242
1243
1244### OH_ImagePacker_Create()
1245
1246```
1247int32_t OH_ImagePacker_Create (napi_env env, napi_value * res )
1248```
1249**描述**
1250获取JavaScript native层ImagePacker对象。
1251
1252**起始版本:** 11
1253
1254**参数:**
1255
1256| 名称 | 描述 | 
1257| -------- | -------- |
1258| env | 表明JNI环境的指针。  | 
1259| res | 表明JavaScript native层ImagePacker对象的指针。  | 
1260
1261**返回:**
1262
1263参考[IRNdkErrCode](#irndkerrcode-1)。
1264
1265如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1266
1267如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER。
1268
1269
1270### OH_ImagePacker_InitNative()
1271
1272```
1273ImagePacker_Native* OH_ImagePacker_InitNative (napi_env env, napi_value packer )
1274```
1275**描述**
1276从输入JavaScript native层ImagePacker对象中,转换成ImagePacker_Native值。
1277
1278**起始版本:** 11
1279
1280**参数:**
1281
1282| 名称 | 描述 | 
1283| -------- | -------- |
1284| env | 表明JNI环境的指针。  | 
1285| packer | 表明JavaScript native层ImagePacker对象。  | 
1286
1287**返回:**
1288
1289如果操作成功则返回[ImagePacker_Native](#imagepacker_native)指针,否则返回空指针。
1290
1291**参见:**
1292
1293[OH_ImagePacker_Release](#oh_imagepacker_release)
1294
1295
1296### OH_ImagePacker_PackToData()
1297
1298```
1299int32_t OH_ImagePacker_PackToData (ImagePacker_Native * native, napi_value source, ImagePacker_Opts * opts, uint8_t * outData, size_t * size )
1300```
1301**描述**
1302通过一个给定的选项ImagePacker_Opts结构体,将输入JavaScript native层PixelMap对象或者ImageSource对象编码并输出到指定的缓存区outData中。
1303
1304**起始版本:** 11
1305
1306**参数:**
1307
1308| 名称 | 描述 | 
1309| -------- | -------- |
1310| native | 表明指向native层**ImagePacker**的指针。  | 
1311| source | 表明待编码JavaScript native层PixelMap对象或者ImageSource对象。  | 
1312| opts | 表明位图编码的选项,查看[ImagePacker_Opts](#imagepacker_opts)。  | 
1313| outData | 输出的指定缓存区。  | 
1314| size | 输出的指定缓存区大小。  | 
1315
1316**返回:**
1317
1318参考[IRNdkErrCode](#irndkerrcode-1)。
1319
1320如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1321
1322如果参数无效返回IMAGE_RESULT_INVALID_PARAMETER;
1323
1324如果输出缓冲区异常返回ERR_IMAGE_DATA_ABNORMAL;
1325
1326如果格式不匹配返回ERR_IMAGE_MISMATCHED_FORMAT;
1327
1328如果malloc内部缓冲区错误返回ERR_IMAGE_MALLOC_ABNORMAL;
1329
1330如果init编解码器内部错误返回ERR_IMAGE_DECODE_ABNORMAL;
1331
1332如果编码器在编码过程中出现错误返回ERR_IMAGE_ENCODE_FAILED。
1333
1334**参见:**
1335
1336[OH_ImagePacker_PackToFile](#oh_imagepacker_packtofile)
1337
1338
1339### OH_ImagePacker_PackToFile()
1340
1341```
1342int32_t OH_ImagePacker_PackToFile (ImagePacker_Native * native, napi_value source, ImagePacker_Opts * opts, int fd )
1343```
1344**描述**
1345通过一个给定的选项ImagePacker_Opts结构体,将输入JavaScript native层PixelMap对象或者ImageSource对象编码并输出到指定的文件中。
1346
1347**起始版本:** 11
1348
1349**参数:**
1350
1351| 名称 | 描述 | 
1352| -------- | -------- |
1353| native | 表明指向native层**ImagePacker**的指针。  | 
1354| source | 表明待编码JavaScript native层PixelMap对象或者ImageSource对象。  | 
1355| opts | 表明位图编码的选项,查看[ImagePacker_Opts](#imagepacker_opts)。  | 
1356| fd | 输出的指定文件描述符。  | 
1357
1358**返回:**
1359
1360参考[IRNdkErrCode](#irndkerrcode-1)。
1361
1362如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1363
1364如果参数无效返回IMAGE_RESULT_INVALID_PARAMETER;
1365
1366如果输出缓冲区异常返回ERR_IMAGE_DATA_ABNORMAL;
1367
1368如果格式不匹配返回ERR_IMAGE_MISMATCHED_FORMAT;
1369
1370如果malloc内部缓冲区错误返回ERR_IMAGE_MALLOC_ABNORMAL;
1371
1372如果init编解码器内部错误返回ERR_IMAGE_DECODE_ABNORMAL;
1373
1374如果编码器在编码过程中出现错误返回ERR_IMAGE_ENCODE_FAILED。
1375
1376**参见:**
1377
1378[OH_ImagePacker_PackToData](#oh_imagepacker_packtodata)
1379
1380
1381### OH_ImagePacker_Release()
1382
1383```
1384int32_t OH_ImagePacker_Release (ImagePacker_Native * native)
1385```
1386**描述**
1387释放native层编码器对象[ImagePacker_Native](#imagepacker_native)。 
1388
1389此API不用于释放JavaScript原生API ImagePacker对象,它用于释放native层对象[ImagePacker_Native](#imagepacker_native)。
1390
1391通过调用[OH_ImagePacker_InitNative](#oh_imagepacker_initnative)解析。
1392
1393**起始版本:** 11
1394
1395**参数:**
1396
1397| 名称 | 描述 | 
1398| -------- | -------- |
1399| native | 表明native层[ImagePacker_Native](#imagepacker_native)值的指针。  | 
1400
1401**返回:**
1402
1403参考[IRNdkErrCode](#irndkerrcode-1)。
1404
1405如果操作成功返回IMAGE_RESULT_SUCCESS。
1406
1407**参见:**
1408
1409[OH_ImagePacker_InitNative](#oh_imagepacker_initnative)
1410
1411
1412### OH_ImageSource_Create()
1413
1414```
1415int32_t OH_ImageSource_Create (napi_env env, struct OhosImageSource * src, struct OhosImageSourceOps * ops, napi_value * res )
1416```
1417**描述**
1418通过给定的信息[OhosImageSource](_ohos_image_source.md)和[OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。
1419
1420**起始版本:** 10
1421
1422**废弃版本:** 11
1423
1424**替代接口:** [OH_ImageSource_CreateFromUri](#oh_imagesource_createfromuri),[OH_ImageSource_CreateFromFd](#oh_imagesource_createfromfd),[OH_ImageSource_CreateFromData](#oh_imagesource_createfromdata)。
1425
1426**参数:**
1427
1428| 名称 | 描述 | 
1429| -------- | -------- |
1430| env | 表明JNI环境的指针。  | 
1431| src | 表明创建一个图像源的信息。查看[OhosImageSource](_ohos_image_source.md)获取更多细节。  | 
1432| ops | 表明创建一个图像源的选项。查看[OhosImageSourceOps](_ohos_image_source_ops.md)。  | 
1433| res | 表明JavaScript native层**ImageSource**对象的指针。  | 
1434
1435**返回:**
1436
1437参考[IRNdkErrCode](#irndkerrcode-1)。
1438
1439如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1440
1441如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1442
1443如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1444
1445如果参数无效,IMAGE_RESULT_INVALID_PARAMETER;
1446
1447如果图像源数据不完整,返回IMAGE_RESULT_SOURCE_DATA_INCOMPLETE;
1448
1449如果图像源数据错误,返回IMAGE_RESULT_SOURCE_DATA;
1450
1451如果图像获取数据错误,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
1452
1453如果图像数据太大,返回IMAGE_RESULT_TOO_LARGE;
1454
1455如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
1456
1457如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
1458
1459如果图像解码 EXIF 不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
1460
1461如果图像属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST;
1462
1463如果文件损坏,返回IMAGE_RESULT_FILE_DAMAGED;
1464
1465如果文件 FD 错误,返回IMAGE_RESULT_FILE_FD_ERROR;
1466
1467如果数据流错误,返回IMAGE_RESULT_STREAM_SIZE_ERROR;
1468
1469如果查找文件失败,返回IMAGE_RESULT_SEEK_FAILED;
1470
1471如果速览文件失败,返回IMAGE_RESULT_PEEK_FAILED;
1472
1473如果读取文件失败,返回IMAGE_RESULT_FREAD_FAILED。
1474
1475**参见:**
1476
1477[OhosImageSource](_ohos_image_source.md), [OhosImageSourceOps](_ohos_image_source_ops.md)
1478
1479
1480### OH_ImageSource_CreateFromData()
1481
1482```
1483int32_t OH_ImageSource_CreateFromData (napi_env env, uint8_t * data, size_t dataSize, struct OhosImageSourceOps * ops, napi_value * res )
1484```
1485**描述**
1486通过给定的图像源缓冲区资源 data 和 [OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。data数据应该是未解码的数据,不要传入类似于RBGA,YUV的像素buffer数据,如果想通过像素buffer数据创建pixelMap,可以调用[OH_PixelMap_CreatePixelMap](./image__pixel__map__mdk_8h.md)这一类接口。
1487
1488**起始版本:** 11
1489
1490**参数:**
1491
1492| 名称 | 描述 | 
1493| -------- | -------- |
1494| env | 表明JNI环境的指针。  | 
1495| data | 表明图像源缓冲区资源,接受格式化包缓冲区或者base64缓冲区。  | 
1496| dataSize | 表明图像源缓冲区资源大小。  | 
1497| ops | 表明创建一个图像源的选项。查看[OhosImageSourceOps](_ohos_image_source_ops.md)。  | 
1498| res | 表明JavaScript native层**ImageSource**对象的指针。  | 
1499
1500**返回:**
1501
1502参考[IRNdkErrCode](#irndkerrcode-1)。
1503
1504如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1505
1506如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER; 
1507
1508如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL; 
1509
1510如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER。
1511
1512**参见:**
1513
1514[OhosImageSourceOps](_ohos_image_source_ops.md)
1515
1516
1517### OH_ImageSource_CreateFromFd()
1518
1519```
1520int32_t OH_ImageSource_CreateFromFd (napi_env env, int32_t fd, struct OhosImageSourceOps * ops, napi_value * res )
1521```
1522**描述**
1523通过给定的文件描述符 fd 和 [OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。
1524
1525**起始版本:** 11
1526
1527**参数:**
1528
1529| 名称 | 描述 | 
1530| -------- | -------- |
1531| env | 表明JNI环境的指针。  | 
1532| fd | 表明图像源文件资源描述符。  | 
1533| ops | 表明创建一个图像源的选项。查看[OhosImageSourceOps](_ohos_image_source_ops.md)。  | 
1534| res | 表明JavaScript native层**ImageSource**对象的指针。  | 
1535
1536**返回:**
1537
1538参考[IRNdkErrCode](#irndkerrcode-1)。
1539
1540如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1541
1542如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1543
1544如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1545
1546如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER。
1547
1548**参见:**
1549
1550[OhosImageSourceOps](_ohos_image_source_ops.md)
1551
1552
1553### OH_ImageSource_CreateFromRawFile()
1554
1555```
1556int32_t OH_ImageSource_CreateFromRawFile (napi_env env, RawFileDescriptor rawFile, struct OhosImageSourceOps * ops, napi_value * res )
1557```
1558**描述**
1559通过给定的资源描述符 **RawFileDescriptor** 和 [OhosImageSourceOps](_ohos_image_source_ops.md)结构体, 获取JavaScript native层**ImageSource**对象。
1560
1561**起始版本:** 11
1562
1563**参数:**
1564
1565| 名称 | 描述 | 
1566| -------- | -------- |
1567| env | 表明JNI环境的指针。  | 
1568| rawFile | 表明图像源资源描述符。  | 
1569| ops | 表明创建一个图像源的选项。查看[OhosImageSourceOps](_ohos_image_source_ops.md)。  | 
1570| res | 表明JavaScript native层**ImageSource**对象的指针。  | 
1571
1572**返回:**
1573
1574参考[IRNdkErrCode](#irndkerrcode-1)。
1575
1576如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1577
1578如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1579
1580如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1581
1582如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER。
1583
1584**参见:**
1585
1586[OhosImageSourceOps](_ohos_image_source_ops.md)
1587
1588
1589### OH_ImageSource_CreateFromUri()
1590
1591```
1592int32_t OH_ImageSource_CreateFromUri (napi_env env, char * uri, size_t size, struct OhosImageSourceOps * ops, napi_value * res )
1593```
1594**描述**
1595通过给定的标识符URI 和 [OhosImageSourceOps](_ohos_image_source_ops.md)结构体,获取JavaScript native层**ImageSource**对象。
1596
1597**起始版本:** 11
1598
1599**参数:**
1600
1601| 名称 | 描述 | 
1602| -------- | -------- |
1603| env | 表明JNI环境的指针。  | 
1604| uri | 表明图像源资源标识符,接受文件资源或者base64资源。当前文件资源只支持绝对路径。  |
1605| size | 表明图像源资源URI的长度。  | 
1606| ops | 表明创建一个图像源的选项。查看[OhosImageSourceOps](_ohos_image_source_ops.md)。  | 
1607| res | 表明JavaScript native层**ImageSource**对象的指针。  | 
1608
1609**返回:**
1610
1611参考[IRNdkErrCode](#irndkerrcode-1)。
1612
1613如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1614
1615如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1616
1617如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1618
1619如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER。
1620
1621**参见:**
1622
1623[OhosImageSourceOps](_ohos_image_source_ops.md)
1624
1625
1626### OH_ImageSource_CreateIncremental()
1627
1628```
1629int32_t OH_ImageSource_CreateIncremental (napi_env env, struct OhosImageSource * source, struct OhosImageSourceOps * ops, napi_value * res )
1630```
1631**描述**
1632通过给定的informations[OhosImageSource](_ohos_image_source.md)和[OhosImageSourceOps](_ohos_image_source_ops.md)结构, 获取增量类型的JavaScript Native API ImageSource对象,图像数据应通过**OH_ImageSource_UpdateData**更新。
1633
1634**起始版本:** 10
1635
1636**废弃版本:** 11
1637
1638**替代接口:** [OH_ImageSource_CreateIncrementalFromData](#oh_imagesource_createincrementalfromdata)
1639
1640**参数:**
1641
1642| 名称 | 描述 | 
1643| -------- | -------- |
1644| env | 表明JNI环境的指针。  | 
1645| src | 表明创建一个图像源的信息,只接收缓冲区类型。具体查看[OhosImageSource](_ohos_image_source.md)。  | 
1646| ops | 表明创建一个图像源的选项。具体查看[OhosImageSourceOps](_ohos_image_source_ops.md)。  | 
1647| res | 表明JavaScript native层**ImageSource**对象的指针。  | 
1648
1649**返回:**
1650
1651参考[IRNdkErrCode](#irndkerrcode-1)。
1652
1653如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1654
1655如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1656
1657如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1658
1659如果参数无效,IMAGE_RESULT_INVALID_PARAMETER;
1660
1661如果图像源数据不完整,返回IMAGE_RESULT_SOURCE_DATA_INCOMPLETE;
1662
1663如果图像源数据错误,返回IMAGE_RESULT_SOURCE_DATA;
1664
1665如果图像获取数据错误,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
1666
1667如果图像数据太大,返回IMAGE_RESULT_TOO_LARGE;
1668
1669如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
1670
1671如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
1672
1673如果图像解码 EXIF 不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
1674
1675如果图像属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST;
1676
1677如果文件损坏,返回IMAGE_RESULT_FILE_DAMAGED;
1678
1679如果文件 FD 错误,返回IMAGE_RESULT_FILE_FD_ERROR;
1680
1681如果数据流错误,返回IMAGE_RESULT_STREAM_SIZE_ERROR;
1682
1683如果查找文件失败,返回IMAGE_RESULT_SEEK_FAILED;
1684
1685如果速览文件失败,返回IMAGE_RESULT_PEEK_FAILED;
1686
1687如果读取文件失败,返回IMAGE_RESULT_FREAD_FAILED。
1688
1689**参见:**
1690
1691[OhosImageSource](_ohos_image_source.md), [OhosImageSourceOps](_ohos_image_source_ops.md), [OH_ImageSource_UpdateData](#oh_imagesource_updatedata)
1692
1693
1694### OH_ImageSource_CreateIncrementalFromData()
1695
1696```
1697int32_t OH_ImageSource_CreateIncrementalFromData (napi_env env, uint8_t * data, size_t dataSize, struct OhosImageSourceOps * ops, napi_value * res )
1698```
1699**描述**
1700通过给定的图像源缓冲区资源 data 和 [OhosImageSourceOps](_ohos_image_source_ops.md)结构体, 获取增量类型的JavaScript Native API ImageSource对象,图像数据应通过OH_ImageSource_UpdateData更新。
1701
1702**起始版本:** 11
1703
1704**参数:**
1705
1706| 名称 | 描述 | 
1707| -------- | -------- |
1708| env | 表明JNI环境的指针。  | 
1709| data | 表明图像源缓冲区资源,接受格式化包缓冲区或者base64缓冲区。  | 
1710| dataSize | 表明图像源缓冲区资源大小。  | 
1711| ops | 表明创建一个图像源的选项。查看[OhosImageSourceOps](_ohos_image_source_ops.md)。  | 
1712| res | 表明JavaScript native层**ImageSource**对象的指针。  | 
1713
1714**返回:**
1715
1716参考[IRNdkErrCode](#irndkerrcode-1)。
1717
1718如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1719
1720如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1721
1722如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1723
1724如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER。
1725
1726**参见:**
1727
1728[OhosImageSourceOps](_ohos_image_source_ops.md)
1729
1730
1731### OH_ImageSource_CreatePixelMap()
1732
1733```
1734int32_t OH_ImageSource_CreatePixelMap (const ImageSourceNative * native, struct OhosImageDecodingOps * ops, napi_value * res )
1735```
1736**描述**
1737通过一个给定的选项[OhosImageDecodingOps](_ohos_image_decoding_ops.md)结构体,从**ImageSource**中解码JavaScript native层**PixelMap**对象
1738
1739**起始版本:** 10
1740
1741**参数:**
1742
1743| 名称 | 描述 | 
1744| -------- | -------- |
1745| native | 表明native层[ImageSourceNative](#imagesourcenative)值的指针。  | 
1746| ops | 表明为了解码图像源的选项,查看[OhosImageDecodingOps](_ohos_image_decoding_ops.md)。  | 
1747| res | 表明JavaScript native层**PixelMap**对象的指针。  | 
1748
1749**返回:**
1750
1751参考[IRNdkErrCode](#irndkerrcode-1)。
1752
1753如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1754
1755如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1756
1757如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1758
1759如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
1760
1761如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
1762
1763如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
1764
1765如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
1766
1767如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
1768
1769如果创建编码器失败,返回IMAGE_RESULT_CREATE_ENCODER_FAILED;
1770
1771如果检查格式不对,返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
1772
1773如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
1774
1775如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
1776
1777如果共享内存错误,返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
1778
1779如果共享内存数据异常,返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
1780
1781如果图片解码异常,返回IMAGE_RESULT_DECODE_ABNORMAL;
1782
1783如果图像内存分配异常,返回IMAGE_RESULT_MALLOC_ABNORMAL;
1784
1785如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
1786
1787如果图像初始化失败,返回IMAGE_RESULT_INIT_ABNORMAL;
1788
1789如果裁剪错误,返回IMAGE_RESULT_CROP;
1790
1791如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
1792
1793如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
1794
1795如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
1796
1797如果图像编码失败,返回IMAGE_RESULT_ENCODE_FAILED;
1798
1799如果不支持图片硬解码,返回IMAGE_RESULT_HW_DECODE_UNSUPPORT;
1800
1801如果硬解码失败,返回IMAGE_RESULT_HW_DECODE_FAILED;
1802
1803如果ipc失败,返回IMAGE_RESULT_ERR_IPC;
1804
1805如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
1806
1807如果透明度类型错误,返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
1808
1809如果内存分配类型错误,返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
1810
1811**参见:**
1812
1813[ImageSourceNative](#imagesourcenative), [OhosImageDecodingOps](_ohos_image_decoding_ops.md)
1814
1815
1816### OH_ImageSource_CreatePixelMapList()
1817
1818```
1819int32_t OH_ImageSource_CreatePixelMapList (const ImageSourceNative * native, struct OhosImageDecodingOps * ops, napi_value * res )
1820```
1821**描述**
1822通过一个给定的选项[OhosImageDecodingOps](_ohos_image_decoding_ops.md)结构体,从**ImageSource**中解码所有的JavaScript native层**PixelMap**对象列表。
1823
1824
1825**起始版本:** 10
1826
1827**参数:**
1828
1829| 名称 | 描述 | 
1830| -------- | -------- |
1831| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针。  | 
1832| ops | 表明为了解码图像源的选项,查看[OhosImageDecodingOps](_ohos_image_decoding_ops.md)。  | 
1833| res | 表明JavaScript native层**PixelMap** 列表对象的指针。  | 
1834
1835**返回:**
1836
1837参考[IRNdkErrCode](#irndkerrcode-1)。
1838
1839如果操作成功返回IMAGE_RESULT_SUCCESS;
1840
1841如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1842
1843如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1844
1845如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
1846
1847如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
1848
1849如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
1850
1851如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
1852
1853如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
1854
1855如果创建编码器失败,返回IMAGE_RESULT_CREATE_ENCODER_FAILED;
1856
1857如果检查格式不对,返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
1858
1859如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
1860
1861如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
1862
1863如果共享内存错误,返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
1864
1865如果共享内存数据异常,返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
1866
1867如果图片解码异常,返回IMAGE_RESULT_DECODE_ABNORMAL;
1868
1869如果图像内存分配异常,返回IMAGE_RESULT_MALLOC_ABNORMAL;
1870
1871如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
1872
1873如果图像初始化失败,返回IMAGE_RESULT_INIT_ABNORMAL;
1874
1875如果裁剪错误,返回IMAGE_RESULT_CROP;
1876
1877如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
1878
1879如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
1880
1881如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
1882
1883如果图像编码失败,返回IMAGE_RESULT_ENCODE_FAILED;
1884
1885如果不支持图片硬解码,返回IMAGE_RESULT_HW_DECODE_UNSUPPORT;
1886
1887如果硬解码失败,返回IMAGE_RESULT_HW_DECODE_FAILED;
1888
1889如果ipc失败,返回IMAGE_RESULT_ERR_IPC;
1890
1891如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
1892
1893如果透明度类型错误,返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
1894
1895如果内存分配类型错误,返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR;
1896
1897如果解码的EXIF不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
1898
1899如果图片属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST。
1900
1901**参见:**
1902
1903[ImageSourceNative](#imagesourcenative), [OhosImageDecodingOps](_ohos_image_decoding_ops.md)
1904
1905
1906### OH_ImageSource_GetDelayTime()
1907
1908```
1909int32_t OH_ImageSource_GetDelayTime (const ImageSourceNative * native, struct OhosImageSourceDelayTimeList * res )
1910```
1911**描述**
1912从**ImageSource**(如GIF图像源)获取延迟时间列表。
1913
1914**起始版本:** 10
1915
1916**参数:**
1917
1918| 名称 | 描述 | 
1919| -------- | -------- |
1920| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针。  | 
1921| res | 表明延迟时间列表 [OhosImageSourceDelayTimeList](_ohos_image_source_delay_time_list.md) 的指针。 当输入的res中**delayTimeList**是空指针并且**size**是0时,将通过res的**size**中返回延迟时间列表大小 为了获取延迟时间,需要比返回的**delayTimeList**大小值大的足够空间  | 
1922
1923**返回:**
1924
1925参考[IRNdkErrCode](#irndkerrcode-1)。
1926
1927如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1928
1929如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1930
1931如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1932
1933如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
1934
1935如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
1936
1937如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
1938
1939如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
1940
1941如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
1942
1943如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
1944
1945如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
1946
1947如果图片解码异常, IMAGE_RESULT_DECODE_ABNORMAL;
1948
1949如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
1950
1951如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
1952
1953如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
1954
1955如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
1956
1957如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
1958
1959如果解码的EXIF不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
1960
1961如果图片属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST。
1962
1963**参见:**
1964
1965[ImageSourceNative](#imagesourcenative), [OhosImageSourceDelayTimeList](_ohos_image_source_delay_time_list.md)
1966
1967
1968### OH_ImageSource_GetFrameCount()
1969
1970```
1971int32_t OH_ImageSource_GetFrameCount (const ImageSourceNative * native, uint32_t * res )
1972```
1973**描述**
1974从**ImageSource**中获取帧计数。
1975
1976**起始版本:** 10
1977
1978**参数:**
1979
1980| 名称 | 描述 | 
1981| -------- | -------- |
1982| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针。  | 
1983| res | 表明帧计数的指针。  | 
1984
1985**返回:**
1986
1987参考[IRNdkErrCode](#irndkerrcode-1)。
1988
1989如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
1990
1991如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
1992
1993如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
1994
1995如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
1996
1997如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
1998
1999如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
2000
2001如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
2002
2003如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
2004
2005如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2006
2007如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
2008
2009如果图片解码异常,返回IMAGE_RESULT_DECODE_ABNORMAL;
2010
2011如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
2012
2013如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
2014
2015如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2016
2017如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2018
2019如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
2020
2021如果解码的EXIF不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
2022
2023如果图片属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST。
2024
2025**参见:**
2026
2027[ImageSourceNative](#imagesourcenative)
2028
2029
2030### OH_ImageSource_GetImageInfo()
2031
2032```
2033int32_t OH_ImageSource_GetImageInfo (const ImageSourceNative * native, int32_t index, struct OhosImageSourceInfo * info )
2034```
2035**描述**
2036通过索引从**ImageSource**获取图像源信息。
2037
2038**起始版本:** 10
2039
2040**参数:**
2041
2042| 名称 | 描述 | 
2043| -------- | -------- |
2044| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针。  | 
2045| index | 表明帧计数的指针。  | 
2046| info | 表明图像源信息[OhosImageSourceInfo](_ohos_image_source_info.md)的指针。  | 
2047
2048**返回:**
2049
2050参考[IRNdkErrCode](#irndkerrcode-1)。
2051
2052如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
2053
2054如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
2055
2056如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2057
2058如果参数无效,IMAGE_RESULT_INVALID_PARAMETER;
2059
2060如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2061
2062如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
2063
2064如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
2065
2066如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
2067
2068如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2069
2070如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
2071
2072如果图片解码异常,返回IMAGE_RESULT_DECODE_ABNORMAL;
2073
2074如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
2075
2076如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
2077
2078如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2079
2080如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2081
2082如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
2083
2084如果解码的EXIF不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
2085
2086如果图片属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST。
2087
2088
2089**参见:**
2090
2091[ImageSourceNative](#imagesourcenative), [OhosImageSourceInfo](_ohos_image_source_info.md)
2092
2093
2094### OH_ImageSource_GetImageProperty()
2095
2096```
2097int32_t OH_ImageSource_GetImageProperty (const ImageSourceNative * native, struct OhosImageSourceProperty * key, struct OhosImageSourceProperty * value )
2098```
2099**描述**
2100通过关键字从**ImageSource**中获取图像源属性。
2101
2102**起始版本:** 10
2103
2104**参数:**
2105
2106| 名称 | 描述 | 
2107| -------- | -------- |
2108| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针。  | 
2109| key | 表明属性关键字[OhosImageSourceProperty](_ohos_image_source_property.md)的指针。  | 
2110| value | 表明作为结果的属性值[OhosImageSourceProperty](_ohos_image_source_property.md)的指针。 当输入的value中**value**是空指针并且**size**是0时,将通过value中的**size**返回属性值的大小。 为了获取属性值,需要比**value**中的结果大小大的足够的空间。  | 
2111
2112**返回:**
2113
2114参考[IRNdkErrCode](#irndkerrcode-1)。
2115
2116如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
2117
2118如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
2119
2120如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2121
2122如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
2123
2124如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2125
2126如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
2127
2128如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
2129
2130如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
2131
2132如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2133
2134如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
2135
2136如果图片解码异常, 返回IMAGE_RESULT_DECODE_ABNORMAL;
2137
2138如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
2139
2140如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
2141
2142如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2143
2144如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2145
2146如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
2147
2148如果解码的EXIF不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
2149
2150如果图片属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST。
2151
2152**参见:**
2153
2154[ImageSourceNative](#imagesourcenative), [OhosImageSourceProperty](_ohos_image_source_property.md)
2155
2156
2157### OH_ImageSource_GetSupportedFormats()
2158
2159```
2160int32_t OH_ImageSource_GetSupportedFormats (struct OhosImageSourceSupportedFormatList * res)
2161```
2162**描述**
2163获取所有支持的解码格式元标记。
2164
2165**起始版本:** 10
2166
2167**参数:**
2168
2169| 名称 | 描述 | 
2170| -------- | -------- |
2171| res | 表明指向[OhosImageSourceSupportedFormatList](_ohos_image_source_supported_format_list.md)结构的列表指针。 当**supportedFormatList**为nullptr并且**size**以res为0作为输入时,它将以res**size**返回支持的格式大小。<br/>为了获得所有的格式标记,它需要比**supportedFormatList**中的结果大小大的足够空间, 还需要为[OhosImageSourceSupportedFormat](_ohos_image_source_supported_format.md)项目中的每个格式提供足够的空间。 | 
2172
2173**返回:**
2174
2175参考[IRNdkErrCode](#irndkerrcode-1)。
2176
2177如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
2178
2179如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
2180
2181如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2182
2183如果参数无效,IMAGE_RESULT_INVALID_PARAMETER;
2184
2185如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
2186
2187如果检查格式不对,返回IMAGE_RESULT_CHECK_FORMAT_ERROR。
2188
2189**参见:**
2190
2191[OhosImageSourceSupportedFormatList](_ohos_image_source_supported_format_list.md), [OhosImageSourceSupportedFormat](_ohos_image_source_supported_format.md)
2192
2193
2194### OH_ImageSource_InitNative()
2195
2196```
2197ImageSourceNative* OH_ImageSource_InitNative (napi_env env, napi_value source )
2198```
2199**描述**
2200从输入JavaScript native层**ImageSource**对象中,转换成[ImageSourceNative](#imagesourcenative)值。
2201
2202**起始版本:** 10
2203
2204**参数:**
2205
2206| 名称 | 描述 | 
2207| -------- | -------- |
2208| env | 表明JNI环境的指针。  | 
2209| source | 表明JavaScript native层**ImageSource**对象的指针。  | 
2210
2211**返回:**
2212
2213如果操作成功返回[ImageSourceNative](#imagesourcenative)指针;如果操作失败,返回空指针。
2214
2215**参见:**
2216
2217[ImageSourceNative](#imagesourcenative), [OH_ImageSource_Release](#oh_imagesource_release)
2218
2219
2220### OH_ImageSource_ModifyImageProperty()
2221
2222```
2223int32_t OH_ImageSource_ModifyImageProperty (const ImageSourceNative * native, struct OhosImageSourceProperty * key, struct OhosImageSourceProperty * value )
2224```
2225**描述**
2226通过关键字为**ImageSource**修改图像源属性。
2227
2228**起始版本:** 10
2229
2230**参数:**
2231
2232| 名称 | 描述 | 
2233| -------- | -------- |
2234| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针  | 
2235| key | 表明属性关键字[OhosImageSourceProperty](_ohos_image_source_property.md)的指针。  | 
2236| value | 为了修改表明属性值[OhosImageSourceProperty](_ohos_image_source_property.md)的指针。  | 
2237
2238**返回:**
2239
2240参考[IRNdkErrCode](#irndkerrcode-1)。
2241
2242如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
2243
2244如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
2245
2246如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2247
2248如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
2249
2250如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2251
2252如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
2253
2254如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
2255
2256如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
2257
2258如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2259
2260如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
2261
2262如果图片解码异常, IMAGE_RESULT_DECODE_ABNORMAL;
2263
2264如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
2265
2266如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
2267
2268如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2269
2270如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2271
2272如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
2273
2274如果解码的EXIF不支持,返回IMAGE_RESULT_DECODE_EXIF_UNSUPPORT;
2275
2276如果图片属性不存在,返回IMAGE_RESULT_PROPERTY_NOT_EXIST。
2277
2278**参见:**
2279
2280[ImageSourceNative](#imagesourcenative), [OhosImageSourceProperty](_ohos_image_source_property.md)
2281
2282
2283### OH_ImageSource_Release()
2284
2285```
2286int32_t OH_ImageSource_Release (ImageSourceNative * native)
2287```
2288**描述**
2289释放native层图像源 **ImageSourceNative**。
2290
2291**起始版本:** 10
2292
2293**参数:**
2294
2295| 名称 | 描述 | 
2296| -------- | -------- |
2297| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针。  | 
2298
2299**返回:**
2300
2301参考[IRNdkErrCode](#irndkerrcode-1)。
2302
2303如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
2304
2305如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
2306
2307如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2308
2309如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
2310
2311如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2312
2313如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL。
2314
2315**参见:**
2316
2317[ImageSourceNative](#imagesourcenative), [OH_ImageSource_Create](#oh_imagesource_create), [OH_ImageSource_CreateIncremental](#oh_imagesource_createincremental)
2318
2319
2320### OH_ImageSource_UpdateData()
2321
2322```
2323int32_t OH_ImageSource_UpdateData (const ImageSourceNative * native, struct OhosImageSourceUpdateData * data )
2324```
2325**描述**
2326为了增量类型的**ImageSource**更新源数据。
2327
2328**起始版本:** 10
2329
2330**参数:**
2331
2332| 名称 | 描述 | 
2333| -------- | -------- |
2334| native | 表明native层 [ImageSourceNative](#imagesourcenative) 值的指针。  | 
2335| data | 表明更新数据信息[OhosImageSourceUpdateData](_ohos_image_source_update_data.md)的指针。  | 
2336
2337**返回:**
2338
2339
2340如果操作成功返回OHOS_IMAGE_RESULT_SUCCESS;
2341
2342如果参数错误,返回IMAGE_RESULT_BAD_PARAMETER;
2343
2344如果 JNI 环境异常,返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2345
2346如果参数无效,返回IMAGE_RESULT_INVALID_PARAMETER;
2347
2348如果获取图片数据异常,返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2349
2350如果解码失败,返回IMAGE_RESULT_DECODE_FAILED;
2351
2352如果图像解码头错误,返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
2353
2354如果创建解码器失败,返回IMAGE_RESULT_CREATE_DECODER_FAILED;
2355
2356如果创建编码器失败,返回IMAGE_RESULT_CREATE_ENCODER_FAILED;
2357
2358如果检查格式不对,返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
2359
2360如果skia错误,返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2361
2362如果输入图片数据错误,返回IMAGE_RESULT_DATA_ABNORMAL;
2363
2364如果共享内存错误,返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
2365
2366如果共享内存数据异常,返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
2367
2368如果图片解码异常,返回IMAGE_RESULT_DECODE_ABNORMAL;
2369
2370如果图像内存分配异常,返回IMAGE_RESULT_MALLOC_ABNORMAL;
2371
2372如果图像类型不支持,返回IMAGE_RESULT_DATA_UNSUPPORT;
2373
2374如果图像初始化失败,返回IMAGE_RESULT_INIT_ABNORMAL;
2375
2376如果裁剪错误,返回IMAGE_RESULT_CROP;
2377
2378如果图片格式未知,返回IMAGE_RESULT_UNKNOWN_FORMAT;
2379
2380如果注册插件失败,返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2381
2382如果创建插件失败,返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2383
2384如果图像编码失败,返回IMAGE_RESULT_ENCODE_FAILED;
2385
2386如果不支持图片硬解码,返回IMAGE_RESULT_HW_DECODE_UNSUPPORT;
2387
2388如果硬解码失败,返回IMAGE_RESULT_HW_DECODE_FAILED;
2389
2390如果ipc失败,返回IMAGE_RESULT_ERR_IPC;
2391
2392如果索引无效,返回IMAGE_RESULT_INDEX_INVALID;
2393
2394如果透明度类型错误,返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
2395
2396如果内存分配类型错误,返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
2397
2398
2399**参见:**
2400
2401[ImageSourceNative](#imagesourcenative), [OhosImageSourceUpdateData](_ohos_image_source_update_data.md)
2402
2403
2404### OH_PixelMap_AccessPixels()
2405
2406```
2407int32_t OH_PixelMap_AccessPixels (const NativePixelMap * native, void ** addr )
2408```
2409**描述**
2410获取native **PixelMap** 对象数据的内存地址,并锁定该内存。
2411
2412**起始版本:** 10
2413
2414**参数:**
2415
2416| 名称 | 描述 | 
2417| -------- | -------- |
2418| native | NativePixelMap的指针。  | 
2419| addr | 用于指向的内存地址的双指针对象。  | 
2420
2421**返回:**
2422
2423参考[IRNdkErrCode](#irndkerrcode-1)。
2424
2425如果操作成功则返回IMAGE_RESULT_SUCCESS;
2426
2427如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2428
2429如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2430
2431如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2432
2433如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2434
2435如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
2436
2437如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
2438
2439如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2440
2441如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2442
2443如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
2444
2445如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
2446
2447如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
2448
2449如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
2450
2451如果裁剪失败则返回IMAGE_RESULT_CROP;
2452
2453如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
2454
2455如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2456
2457如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2458
2459如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
2460
2461如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
2462
2463如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
2464
2465
2466
2467### OH_PixelMap_CreateAlphaPixelMap()
2468
2469```
2470int32_t OH_PixelMap_CreateAlphaPixelMap (napi_env env, napi_value source, napi_value * alpha )
2471```
2472**描述**
2473根据Alpha通道的信息,来生成一个仅包含Alpha通道信息的**PixelMap**对象。
2474
2475**起始版本:** 10
2476
2477**参数:**
2478
2479| 名称 | 描述 | 
2480| -------- | -------- |
2481| env | napi的环境指针。  | 
2482| source | 应用层的 **PixelMap** 对象。  | 
2483| alpha | alpha通道的指针。  | 
2484
2485**返回:**
2486
2487参考[IRNdkErrCode](#irndkerrcode-1)。
2488
2489如果操作成功则返回IMAGE_RESULT_SUCCESS;
2490
2491如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2492
2493如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2494
2495如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2496
2497如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2498
2499如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
2500
2501如果图像头解码失败则返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
2502
2503如果创建解码器失败则返回IMAGE_RESULT_CREATE_DECODER_FAILED;
2504
2505如果创建编码器失败则返回IMAGE_RESULT_CREATE_ENCODER_FAILED;
2506
2507如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
2508
2509如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2510
2511如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2512
2513如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
2514
2515如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
2516
2517如果图像解码失败则返回IMAGE_RESULT_DECODE_ABNORMAL;
2518
2519如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
2520
2521如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
2522
2523如果图像初始化失败则返回IMAGE_RESULT_INIT_ABNORMAL;
2524
2525如果裁剪失败则返回IMAGE_RESULT_CROP;
2526
2527如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
2528
2529如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2530
2531如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2532
2533如果图像编码失败则返回IMAGE_RESULT_ENCODE_FAILED;
2534
2535如果图像不支持硬件解码则返回IMAGE_RESULT_HW_DECODE_UNSUPPORT;
2536
2537如果硬件解码失败则返回IMAGE_RESULT_HW_DECODE_FAILED;
2538
2539如果ipc失败则返回IMAGE_RESULT_ERR_IPC;
2540
2541如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
2542
2543如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
2544
2545如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
2546
2547
2548### OH_PixelMap_CreatePixelMap()
2549
2550```
2551int32_t OH_PixelMap_CreatePixelMap (napi_env env, OhosPixelMapCreateOps info, void * buf, size_t len, napi_value * res )
2552```
2553**描述**
2554创建**PixelMap**对象。当前只支持输入流为BGRA格式的流。该接口传入的buf不支持stride。
2555
2556**起始版本:** 10
2557
2558**参数:**
2559
2560| 名称 | 描述 | 
2561| -------- | -------- |
2562| env | napi的环境指针。  | 
2563| info |PixelMap数据设置项。  | 
2564| buf | 图片的buffer数据。  | 
2565| len | 图片大小信息。  | 
2566| res | 应用层的 **PixelMap** 对象的指针。  | 
2567
2568**返回:**
2569
2570参考[IRNdkErrCode](#irndkerrcode-1)。
2571
2572如果操作成功则返回IMAGE_RESULT_SUCCESS;
2573
2574如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2575
2576如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2577
2578如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2579
2580如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2581
2582如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
2583
2584如果图像头解码失败则返回IMAGE_RESULT_DECODE_HEAD_ABNORMAL;
2585
2586如果创建解码器失败则返回IMAGE_RESULT_CREATE_DECODER_FAILED;
2587
2588如果创建编码器失败则返回IMAGE_RESULT_CREATE_ENCODER_FAILED;
2589
2590如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
2591
2592如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2593
2594如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2595
2596如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
2597
2598如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
2599
2600如果图像解码失败则返回IMAGE_RESULT_DECODE_ABNORMAL;
2601
2602如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
2603
2604如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
2605
2606如果图像初始化失败则返回IMAGE_RESULT_INIT_ABNORMAL;
2607
2608如果裁剪失败则返回IMAGE_RESULT_CROP;
2609
2610如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
2611
2612如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2613
2614如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2615
2616如果图像编码失败则返回IMAGE_RESULT_ENCODE_FAILED;
2617
2618如果图像不支持硬件解码则返回IMAGE_RESULT_HW_DECODE_UNSUPPORT;
2619
2620如果硬件解码失败则返回IMAGE_RESULT_HW_DECODE_FAILED;
2621
2622如果ipc失败则返回IMAGE_RESULT_ERR_IPC;
2623
2624如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
2625
2626如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
2627
2628如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
2629
2630
2631
2632### OH_PixelMap_CreatePixelMapWithStride()
2633
2634```
2635int32_t OH_PixelMap_CreatePixelMapWithStride (napi_env env, OhosPixelMapCreateOps info, void * buf, size_t len, int32_t rowStride, napi_value * res )
2636```
2637**描述**
2638创建**PixelMap**对象。当前只支持输入流为BGRA格式的流。pixelmap内存在RGBA格式下,默认为DMA内存(图片512\*512以上)。
2639
2640**起始版本:** 12
2641
2642**参数:**
2643
2644| 名称 | 描述 | 
2645| -------- | -------- |
2646| env | napi的环境指针。  | 
2647| info | PixelMap数据设置项。  | 
2648| buf | 图片的buffer数据。  | 
2649| len | 图片buffer大小信息。  | 
2650| rowStride | 图片跨距信息。 跨距,图像每行占用的真实内存大小,单位为字节。跨距 = width \* 单位像素字节数 + padding,padding为每行为内存对齐做的填充区域。  | 
2651| res | 应用层的 PixelMap 对象的指针。  | 
2652
2653**返回:**
2654
2655参考[IRNdkErrCode](#irndkerrcode-1)。
2656
2657如果操作成功则返回IMAGE_RESULT_SUCCESS; 
2658
2659如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER; 
2660
2661如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL; 
2662
2663如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL; 
2664
2665如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR; 
2666
2667如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL; 
2668
2669如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL; 
2670
2671如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT; 
2672
2673如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT。
2674
2675
2676
2677### OH_PixelMap_Crop()
2678
2679```
2680int32_t OH_PixelMap_Crop (const NativePixelMap * native, int32_t x, int32_t y, int32_t width, int32_t height )
2681```
2682**描述**
2683设置**PixelMap**对象的裁剪。
2684
2685**起始版本:** 10
2686
2687**参数:**
2688
2689| 名称 | 描述 | 
2690| -------- | -------- |
2691| native | NativePixelMap的指针。  | 
2692| x | 目标图片左上角的x坐标。  | 
2693| y | 目标图片左上角的y坐标。  | 
2694| width | 裁剪区域的宽度。  | 
2695| height | 裁剪区域的高度。  | 
2696
2697**返回:**
2698
2699参考[IRNdkErrCode](#irndkerrcode-1)。
2700
2701如果操作成功则返回IMAGE_RESULT_SUCCESS;
2702
2703如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2704
2705如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2706
2707如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2708
2709如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2710
2711如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
2712
2713如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
2714
2715如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2716
2717如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2718
2719如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
2720
2721如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
2722
2723如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
2724
2725如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
2726
2727如果裁剪失败则返回IMAGE_RESULT_CROP;
2728
2729如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
2730
2731如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2732
2733如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2734
2735如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
2736
2737如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
2738
2739如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
2740
2741
2742
2743### OH_PixelMap_Flip()
2744
2745```
2746int32_t OH_PixelMap_Flip (const NativePixelMap * native, int32_t x, int32_t y )
2747```
2748**描述**
2749设置**PixelMap**对象的翻转。
2750
2751**起始版本:** 10
2752
2753**参数:**
2754
2755| 名称 | 描述 | 
2756| -------- | -------- |
2757| native | NativePixelMap的指针。  | 
2758| x | 根据水平方向x轴进行图片翻转。  | 
2759| y | 根据垂直方向y轴进行图片翻转。  | 
2760
2761**返回:**
2762
2763参考[IRNdkErrCode](#irndkerrcode-1)。
2764
2765如果操作成功则返回IMAGE_RESULT_SUCCESS;
2766
2767如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2768
2769如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2770
2771如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2772
2773如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2774
2775如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
2776
2777如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
2778
2779如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2780
2781如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2782
2783如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
2784
2785如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
2786
2787如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
2788
2789如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
2790
2791如果裁剪失败则返回IMAGE_RESULT_CROP;
2792
2793如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
2794
2795如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2796
2797如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2798
2799如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
2800
2801如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
2802
2803如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
2804
2805
2806
2807### OH_PixelMap_GetBytesNumberPerRow()
2808
2809```
2810int32_t OH_PixelMap_GetBytesNumberPerRow (const NativePixelMap * native, int32_t * num )
2811```
2812**描述**
2813获取**PixelMap**对象每行字节数。
2814
2815**起始版本:** 10
2816
2817**参数:**
2818
2819| 名称 | 描述 | 
2820| -------- | -------- |
2821| native | NativePixelMap的指针。  | 
2822| num | **PixelMap**对象的每行字节数指针。  | 
2823
2824**返回:**
2825
2826参考[IRNdkErrCode](#irndkerrcode-1)。
2827
2828如果操作成功则返回IMAGE_RESULT_SUCCESS;
2829
2830如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2831
2832如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2833
2834如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2835
2836如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2837
2838如果参数无效则返回IMAGE_RESULT_INDEX_INVALID。
2839
2840
2841
2842### OH_PixelMap_GetDensity()
2843
2844```
2845int32_t OH_PixelMap_GetDensity (const NativePixelMap * native, int32_t * density )
2846```
2847**描述**
2848获取**PixelMap**对象像素密度。
2849
2850**起始版本:** 10
2851
2852**参数:**
2853
2854| 名称 | 描述 | 
2855| -------- | -------- |
2856| native | NativePixelMap的指针。  | 
2857| density | 像素密度指针。  | 
2858
2859**返回:**
2860
2861参考[IRNdkErrCode](#irndkerrcode-1)。
2862
2863如果操作成功则返回IMAGE_RESULT_SUCCESS;
2864
2865如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2866
2867如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2868
2869如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2870
2871如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2872
2873如果参数无效则返回IMAGE_RESULT_INDEX_INVALID。
2874
2875
2876
2877### OH_PixelMap_GetImageInfo()
2878
2879```
2880int32_t OH_PixelMap_GetImageInfo (const NativePixelMap * native, OhosPixelMapInfos * info )
2881```
2882**描述**
2883获取**PixelMap**对象图像信息。
2884
2885**起始版本:** 10
2886
2887**参数:**
2888
2889| 名称 | 描述 | 
2890| -------- | -------- |
2891| native | NativePixelMap的指针。  | 
2892| info | 图像信息指针。  | 
2893
2894**返回:**
2895
2896参考[IRNdkErrCode](#irndkerrcode-1)。
2897
2898如果操作成功则返回IMAGE_RESULT_SUCCESS;
2899
2900如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2901
2902如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2903
2904如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2905
2906如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
2907
2908如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
2909
2910如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
2911
2912如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
2913
2914如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2915
2916如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
2917
2918如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
2919
2920如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
2921
2922如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
2923
2924如果裁剪失败则返回IMAGE_RESULT_CROP;
2925
2926如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
2927
2928如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
2929
2930如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
2931
2932如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
2933
2934如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
2935
2936如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
2937
2938**参见:**
2939
2940[OhosPixelMapInfos](_ohos_pixel_map_infos.md)
2941
2942
2943### OH_PixelMap_GetIsEditable()
2944
2945```
2946int32_t OH_PixelMap_GetIsEditable (const NativePixelMap * native, int32_t * editable )
2947```
2948**描述**
2949获取**PixelMap**对象是否可编辑的状态。
2950
2951**起始版本:** 10
2952
2953**参数:**
2954
2955| 名称 | 描述 | 
2956| -------- | -------- |
2957| native | NativePixelMap的指针。  | 
2958| editable | **PixelMap** 对象是否可编辑的指针。  | 
2959
2960**返回:**
2961
2962参考[IRNdkErrCode](#irndkerrcode-1)。
2963
2964如果操作成功则返回IMAGE_RESULT_SUCCESS;
2965
2966如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
2967
2968如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
2969
2970如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
2971
2972如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
2973
2974如果参数无效则返回IMAGE_RESULT_INDEX_INVALID。
2975
2976
2977
2978### OH_PixelMap_InitNativePixelMap()
2979
2980```
2981NativePixelMap* OH_PixelMap_InitNativePixelMap (napi_env env, napi_value source )
2982```
2983**描述**
2984初始化**NativePixelMap**对象。
2985
2986**起始版本:** 10
2987
2988**参数:**
2989
2990| 名称 | 描述 | 
2991| -------- | -------- |
2992| env | napi的环境指针。  | 
2993| source | 应用层的 **PixelMap** 对象。  |
2994
2995**返回:**
2996
2997操作成功则返回NativePixelMap的指针;如果操作失败,则返回错误码。
2998
2999
3000### OH_PixelMap_IsSupportAlpha()
3001
3002```
3003int32_t OH_PixelMap_IsSupportAlpha (const NativePixelMap * native, int32_t * alpha )
3004```
3005**描述**
3006获取**PixelMap**对象是否支持Alpha通道。
3007
3008**起始版本:** 10
3009
3010**参数:**
3011
3012| 名称 | 描述 | 
3013| -------- | -------- |
3014| native | NativePixelMap的指针。  | 
3015| alpha | 是否支持Alpha的指针。  | 
3016
3017**返回:**
3018
3019参考[IRNdkErrCode](#irndkerrcode-1)。
3020
3021如果操作成功则返回IMAGE_RESULT_SUCCESS;
3022
3023如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3024
3025如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3026
3027如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3028
3029如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3030
3031如果参数无效则返回IMAGE_RESULT_INDEX_INVALID。
3032
3033
3034
3035### OH_PixelMap_Rotate()
3036
3037```
3038int32_t OH_PixelMap_Rotate (const NativePixelMap * native, float angle )
3039```
3040**描述**
3041设置**PixelMap**对象的旋转。
3042
3043**起始版本:** 10
3044
3045**参数:**
3046
3047| 名称 | 描述 | 
3048| -------- | -------- |
3049| native | NativePixelMap的指针。  | 
3050| angle | 旋转角度。  | 
3051
3052**返回:**
3053
3054参考[IRNdkErrCode](#irndkerrcode-1)。
3055
3056如果操作成功则返回IMAGE_RESULT_SUCCESS;
3057
3058如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3059
3060如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3061
3062如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3063
3064如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
3065
3066如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
3067
3068如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
3069
3070如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
3071
3072如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3073
3074如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
3075
3076如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
3077
3078如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
3079
3080如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
3081
3082如果裁剪失败则返回IMAGE_RESULT_CROP;
3083
3084如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
3085
3086如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
3087
3088如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
3089
3090如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
3091
3092如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
3093
3094如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
3095
3096
3097
3098### OH_PixelMap_Scale()
3099
3100```
3101int32_t OH_PixelMap_Scale (const NativePixelMap * native, float x, float y )
3102```
3103**描述**
3104设置**PixelMap**对象的缩放。
3105
3106**起始版本:** 10
3107
3108**参数:**
3109
3110| 名称 | 描述 | 
3111| -------- | -------- |
3112| native | NativePixelMap的指针。  | 
3113| x | 宽度的缩放比例。  | 
3114| y | 高度的缩放比例。  | 
3115
3116**返回:**
3117
3118参考[IRNdkErrCode](#irndkerrcode-1)。
3119
3120如果操作成功则返回IMAGE_RESULT_SUCCESS;
3121
3122如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3123
3124如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3125
3126如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3127
3128如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
3129
3130如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
3131
3132如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
3133
3134如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
3135
3136如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3137
3138如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
3139
3140如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
3141
3142如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
3143
3144如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
3145
3146如果图像初始化失败则返回IMAGE_RESULT_INIT_ABNORMAL;
3147
3148如果裁剪失败则返回IMAGE_RESULT_CROP;
3149
3150如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
3151
3152如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
3153
3154如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
3155
3156如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
3157
3158如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
3159
3160如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
3161
3162
3163
3164### OH_PixelMap_ScaleWithAntiAliasing()
3165
3166```
3167int32_t OH_PixelMap_ScaleWithAntiAliasing (const NativePixelMap * native, float x, float y, OH_PixelMap_AntiAliasingLevel level )
3168```
3169**描述**
3170根据指定的缩放算法和输入的宽高对图片进行缩放。
3171
3172**起始版本:** 12
3173
3174**参数:**
3175
3176| 名称 | 描述 | 
3177| -------- | -------- |
3178| native | NativePixelMap的指针。  | 
3179| x | 宽度的缩放比例。  | 
3180| y | 高度的缩放比例。  | 
3181| level | 缩放算法。  | 
3182
3183**返回:**
3184
3185参考[IRNdkErrCode](#irndkerrcode-1)。
3186
3187如果操作成功则返回IMAGE_RESULT_SUCCESS; 
3188
3189如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL; 
3190
3191如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER; 
3192
3193如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL; 
3194
3195如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR; 
3196
3197如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR; 
3198
3199如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL; 
3200
3201如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL; 
3202
3203如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT。
3204
3205
3206
3207### OH_PixelMap_SetAlphaAble()
3208
3209```
3210int32_t OH_PixelMap_SetAlphaAble (const NativePixelMap * native, int32_t alpha )
3211```
3212**描述**
3213设置**PixelMap**对象的Alpha通道。
3214
3215**起始版本:** 10
3216
3217**参数:**
3218
3219| 名称 | 描述 | 
3220| -------- | -------- |
3221| native | NativePixelMap的指针。  | 
3222| alpha | Alpha通道。  | 
3223
3224**返回:**
3225
3226参考[IRNdkErrCode](#irndkerrcode-1)。
3227
3228如果操作成功则返回IMAGE_RESULT_SUCCESS;
3229
3230如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3231
3232如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3233
3234如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3235
3236如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3237
3238如果参数无效则返回IMAGE_RESULT_INDEX_INVALID。
3239
3240
3241
3242### OH_PixelMap_SetDensity()
3243
3244```
3245int32_t OH_PixelMap_SetDensity (const NativePixelMap * native, int32_t density )
3246```
3247**描述**
3248设置**PixelMap**对象像素密度。
3249
3250**起始版本:** 10
3251
3252**参数:**
3253
3254| 名称 | 描述 | 
3255| -------- | -------- |
3256| native | NativePixelMap的指针。  | 
3257| density | 像素密度。  | 
3258
3259**返回:**
3260
3261参考[IRNdkErrCode](#irndkerrcode-1)。
3262
3263如果操作成功则返回IMAGE_RESULT_SUCCESS;
3264
3265如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3266
3267如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3268
3269如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3270
3271如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3272
3273如果参数无效则返回IMAGE_RESULT_INDEX_INVALID。
3274
3275
3276
3277### OH_PixelMap_SetOpacity()
3278
3279```
3280int32_t OH_PixelMap_SetOpacity (const NativePixelMap * native, float opacity )
3281```
3282**描述**
3283设置**PixelMap**对象的透明度。
3284
3285**起始版本:** 10
3286
3287**参数:**
3288
3289| 名称 | 描述 | 
3290| -------- | -------- |
3291| native | NativePixelMap的指针。  | 
3292| opacity | 透明度。  | 
3293
3294**返回:**
3295
3296参考[IRNdkErrCode](#irndkerrcode-1)。
3297
3298如果操作成功则返回IMAGE_RESULT_SUCCESS;
3299
3300如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3301
3302如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3303
3304如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3305
3306如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3307
3308如果参数无效则返回IMAGE_RESULT_INDEX_INVALID。
3309
3310
3311### OH_PixelMap_Translate()
3312
3313```
3314int32_t OH_PixelMap_Translate (const NativePixelMap * native, float x, float y )
3315```
3316**描述**
3317设置**PixelMap**对象的偏移。
3318
3319**起始版本:** 10
3320
3321**参数:**
3322
3323| 名称 | 描述 | 
3324| -------- | -------- |
3325| native | NativePixelMap的指针。  | 
3326| x | 水平偏移量。  | 
3327| y | 垂直偏移量。  | 
3328
3329**返回:**
3330
3331参考[IRNdkErrCode](#irndkerrcode-1)。
3332
3333如果操作成功则返回IMAGE_RESULT_SUCCESS;
3334
3335如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3336
3337如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3338
3339如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3340
3341如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
3342
3343如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
3344
3345如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
3346
3347如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
3348
3349如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3350
3351如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
3352
3353如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
3354
3355如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
3356
3357如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
3358
3359如果裁剪失败则返回IMAGE_RESULT_CROP;
3360
3361如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
3362
3363如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
3364
3365如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
3366
3367如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
3368
3369如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
3370
3371如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
3372
3373
3374
3375### OH_PixelMap_UnAccessPixels()
3376
3377```
3378int32_t OH_PixelMap_UnAccessPixels (const NativePixelMap * native)
3379```
3380**描述**
3381释放native **PixelMap**对象数据的内存锁,用于匹配方法[OH_PixelMap_AccessPixels](#oh_pixelmap_accesspixels)。
3382
3383**起始版本:** 10
3384
3385**参数:**
3386
3387| 名称 | 描述 | 
3388| -------- | -------- |
3389| native | NativePixelMap的指针。  | 
3390
3391**返回:**
3392
3393参考[IRNdkErrCode](#irndkerrcode-1)。
3394
3395如果操作成功则返回IMAGE_RESULT_SUCCESS;
3396
3397如果参数错误则返回IMAGE_RESULT_BAD_PARAMETER;
3398
3399如果JNI环境异常则返回IMAGE_RESULT_JNI_ENV_ABNORMAL;
3400
3401如果参数无效则返回IMAGE_RESULT_INVALID_PARAMETER;
3402
3403如果图像获取数据失败则返回IMAGE_RESULT_GET_DATA_ABNORMAL;
3404
3405如果解码失败则返回IMAGE_RESULT_DECODE_FAILED;
3406
3407如果检查格式失败则返回IMAGE_RESULT_CHECK_FORMAT_ERROR;
3408
3409如果skia能力失败则返回IMAGE_RESULT_THIRDPART_SKIA_ERROR;
3410
3411如果图像输入数据失败则返回IMAGE_RESULT_DATA_ABNORMAL;
3412
3413如果共享内存失败则返回IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST;
3414
3415如果共享内存数据错误则返回IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL;
3416
3417如果图像分配内存失败则返回IMAGE_RESULT_MALLOC_ABNORMAL;
3418
3419如果属性无效或图像数据不支持则返回IMAGE_RESULT_DATA_UNSUPPORT;
3420
3421如果裁剪失败则返回IMAGE_RESULT_CROP;
3422
3423如果图像格式未知则返回IMAGE_RESULT_UNKNOWN_FORMAT;
3424
3425如果注册插件失败则返回IMAGE_RESULT_PLUGIN_REGISTER_FAILED;
3426
3427如果创建插件失败则返回IMAGE_RESULT_PLUGIN_CREATE_FAILED;
3428
3429如果参数无效则返回IMAGE_RESULT_INDEX_INVALID;
3430
3431如果透明度类型错误则返回IMAGE_RESULT_ALPHA_TYPE_ERROR;
3432
3433如果内存分配类型错误则返回IMAGE_RESULT_ALLOCATER_TYPE_ERROR。
3434
3435
3436
3437
3438### OH_UnAccessPixels()
3439
3440```
3441int32_t OH_UnAccessPixels (napi_env env, napi_value value )
3442```
3443**描述**
3444释放**PixelMap**对象数据的内存锁, 用于匹配方法**OH_AccessPixels**。
3445
3446**废弃版本:** 10
3447
3448**起始版本:** 8
3449
3450**参数:**
3451
3452| 名称 | 描述 | 
3453| -------- | -------- |
3454| env | napi的环境指针。  | 
3455| value | 应用层的 **PixelMap** 对象。  | 
3456
3457**返回:**
3458
3459操作成功则返回 **OHOS_IMAGE_RESULT_SUCCESS**;如果操作失败,则返回错误码。
3460
3461
3462
3463## 变量说明
3464
3465
3466### alphaType
3467
3468```
3469int32_t OhosImageSourceInfo::alphaType
3470```
3471**描述**
3472图像源透明度类型
3473
3474
3475### buffer [1/2]
3476
3477```
3478uint8_t* OhosImageSource::buffer = nullptr
3479```
3480**描述**
3481图像源缓冲区资源,接受格式化包缓冲区或者base64缓冲区
3482
3483**起始版本:** 10
3484
3485### buffer [2/2]
3486
3487```
3488uint8_t* OhosImageSourceUpdateData::buffer = nullptr
3489```
3490**描述**
3491图像源更新数据缓冲区
3492
3493**起始版本:** 10
3494
3495
3496### bufferSize [1/2]
3497
3498```
3499size_t OhosImageSource::bufferSize = 0
3500```
3501**描述**
3502图像源缓冲区资源大小
3503
3504
3505### bufferSize [2/2]
3506
3507```
3508size_t OhosImageSourceUpdateData::bufferSize = 0
3509```
3510**描述**
3511图像源更新数据缓冲区大小
3512
3513**起始版本:** 10
3514
3515
3516### colorSpace
3517
3518```
3519int32_t OhosImageSourceInfo::colorSpace
3520```
3521**描述**
3522图像源色彩空间
3523
3524**起始版本:** 10
3525
3526
3527### delayTimeList
3528
3529```
3530int32_t* OhosImageSourceDelayTimeList::delayTimeList
3531```
3532**描述**
3533图像源延迟时间列表头地址
3534
3535**起始版本:** 10
3536
3537
3538### density [1/2]
3539
3540```
3541int32_t OhosImageSourceOps::density
3542```
3543**描述**
3544图像源像素密度
3545
3546**起始版本:** 10
3547
3548
3549### density [2/2]
3550
3551```
3552int32_t OhosImageSourceInfo::density
3553```
3554**描述**
3555图像源密度, 由 [OH_ImageSource_Create](#oh_imagesource_create) 设置
3556
3557**起始版本:** 10
3558
3559
3560### editable
3561
3562```
3563int8_t OhosImageDecodingOps::editable
3564```
3565**描述**
3566定义输出的像素位图是否可编辑
3567
3568**起始版本:** 10
3569
3570
3571### fd
3572
3573```
3574int32_t OhosImageSource::fd = -1
3575```
3576**描述**
3577图像源文件资源描述符
3578
3579**起始版本:** 10
3580
3581
3582### fitDensity
3583
3584```
3585int32_t OhosImageDecodingOps::fitDensity
3586```
3587**描述**
3588定义解码目标的像素密度
3589
3590**起始版本:** 10
3591
3592
3593### format
3594
3595```
3596char* OhosImageSourceSupportedFormat::format = nullptr
3597```
3598**描述**
3599图像源支持的格式字符串头地址
3600
3601**起始版本:** 10
3602
3603
3604### height
3605
3606```
3607int32_t OhosImageRegion::height
3608```
3609**描述**
3610高度范围,用pixels表示
3611
3612**起始版本:** 10
3613
3614### index
3615
3616```
3617uint32_t OhosImageDecodingOps::index
3618```
3619**描述**
3620定义图像源解码指数
3621
3622**起始版本:** 10
3623
3624
3625### isCompleted
3626
3627```
3628int8_t OhosImageSourceUpdateData::isCompleted = 0
3629```
3630**描述**
3631图像源更新数据在此节中完成
3632
3633**起始版本:** 10
3634
3635
3636### offset
3637
3638```
3639uint32_t OhosImageSourceUpdateData::offset = 0
3640```
3641**描述**
3642图像源更新数据缓冲区的开端
3643
3644**起始版本:** 10
3645
3646
3647### OHOS_IMAGE_PROPERTY_BITS_PER_SAMPLE
3648
3649```
3650const char* OHOS_IMAGE_PROPERTY_BITS_PER_SAMPLE = "BitsPerSample"
3651```
3652**描述**
3653定义每个样本比特的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3654
3655**起始版本:** 10
3656
3657
3658### OHOS_IMAGE_PROPERTY_COMPRESSED_BITS_PER_PIXEL
3659
3660```
3661const char* OHOS_IMAGE_PROPERTY_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel"
3662```
3663**描述**
3664定义每个像素的压缩比特的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3665
3666**起始版本:** 10
3667
3668
3669### OHOS_IMAGE_PROPERTY_DATE_TIME_ORIGINAL
3670
3671```
3672const char* OHOS_IMAGE_PROPERTY_DATE_TIME_ORIGINAL = "DateTimeOriginal"
3673```
3674**描述**
3675定义初始日期时间的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3676
3677**起始版本:** 10
3678
3679
3680### OHOS_IMAGE_PROPERTY_EXPOSURE_TIME
3681
3682```
3683const char* OHOS_IMAGE_PROPERTY_EXPOSURE_TIME = "ExposureTime"
3684```
3685**描述**
3686定义曝光时间的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3687**起始版本:** 10
3688
3689
3690### OHOS_IMAGE_PROPERTY_F_NUMBER
3691
3692```
3693const char* OHOS_IMAGE_PROPERTY_F_NUMBER = "FNumber"
3694```
3695**描述**
3696定义FNumber的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3697
3698**起始版本:** 10
3699
3700
3701### OHOS_IMAGE_PROPERTY_GPS_LATITUDE
3702
3703```
3704const char* OHOS_IMAGE_PROPERTY_GPS_LATITUDE = "GPSLatitude"
3705```
3706**描述**
3707定义GPS纬度的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3708
3709**起始版本:** 10
3710
3711
3712### OHOS_IMAGE_PROPERTY_GPS_LATITUDE_REF
3713
3714```
3715const char* OHOS_IMAGE_PROPERTY_GPS_LATITUDE_REF = "GPSLatitudeRef"
3716```
3717**描述**
3718定义GPS纬度参考的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3719
3720**起始版本:** 10
3721
3722
3723### OHOS_IMAGE_PROPERTY_GPS_LONGITUDE
3724
3725```
3726const char* OHOS_IMAGE_PROPERTY_GPS_LONGITUDE = "GPSLongitude"
3727```
3728**描述**
3729定义GPS经度的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3730
3731**起始版本:** 10
3732
3733
3734### OHOS_IMAGE_PROPERTY_GPS_LONGITUDE_REF
3735
3736```
3737const char* OHOS_IMAGE_PROPERTY_GPS_LONGITUDE_REF = "GPSLongitudeRef"
3738```
3739**描述**
3740定义GPS经度参考的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3741
3742
3743**起始版本:** 10
3744
3745
3746### OHOS_IMAGE_PROPERTY_IMAGE_LENGTH
3747
3748```
3749const char* OHOS_IMAGE_PROPERTY_IMAGE_LENGTH = "ImageLength"
3750```
3751**描述**
3752定义图像长度的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3753
3754**起始版本:** 10
3755
3756
3757### OHOS_IMAGE_PROPERTY_IMAGE_WIDTH
3758
3759```
3760const char* OHOS_IMAGE_PROPERTY_IMAGE_WIDTH = "ImageWidth"
3761```
3762**描述**
3763定义图像宽度的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3764
3765
3766**起始版本:** 10
3767
3768
3769### OHOS_IMAGE_PROPERTY_ISO_SPEED_RATINGS
3770
3771```
3772const char* OHOS_IMAGE_PROPERTY_ISO_SPEED_RATINGS = "ISOSpeedRatings"
3773```
3774**描述**
3775定义ISO速度等级的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3776
3777**起始版本:** 10
3778
3779
3780### OHOS_IMAGE_PROPERTY_ORIENTATION
3781
3782```
3783const char* OHOS_IMAGE_PROPERTY_ORIENTATION = "Orientation"
3784```
3785**描述**
3786定义方向的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3787
3788**起始版本:** 10
3789
3790
3791### OHOS_IMAGE_PROPERTY_SCENE_TYPE
3792
3793```
3794const char* OHOS_IMAGE_PROPERTY_SCENE_TYPE = "SceneType"
3795```
3796**描述**
3797定义场景类型的图像属性关键字。 此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)这两个接口使用。
3798
3799**起始版本:** 10
3800
3801
3802### pixelFormat [1/3]
3803
3804```
3805int32_t OhosImageSourceOps::pixelFormat
3806```
3807**描述**
3808图像源像素格式,通常用于描述YUV缓冲区
3809
3810**起始版本:** 10
3811
3812
3813### pixelFormat [2/3]
3814
3815```
3816int32_t OhosImageDecodingOps::pixelFormat
3817```
3818**描述**
3819定义输出的像素格式
3820
3821**起始版本:** 10
3822
3823
3824### pixelFormat [3/3]
3825
3826```
3827int32_t OhosImageSourceInfo::pixelFormat
3828```
3829**描述**
3830图像源像素格式, 由 [OH_ImageSource_Create](#oh_imagesource_create) 设置
3831
3832**起始版本:** 10
3833
3834
3835### region
3836
3837```
3838struct OhosImageRegion OhosImageDecodingOps::region
3839```
3840**描述**
3841定义图像源解码的像素范围
3842
3843**起始版本:** 10
3844
3845
3846### rotate
3847
3848```
3849uint32_t OhosImageDecodingOps::rotate
3850```
3851**描述**
3852定义解码旋转选项
3853
3854**起始版本:** 10
3855
3856
3857### sampleSize
3858
3859```
3860uint32_t OhosImageDecodingOps::sampleSize
3861```
3862**描述**
3863定义解码样本大小选项
3864
3865**起始版本:** 10
3866
3867
3868### size [1/7]
3869
3870```
3871struct OhosImageSize OhosImageSourceOps::size
3872```
3873**描述**
3874图像源像素宽高的大小
3875
3876**起始版本:** 10
3877
3878
3879### size [2/7]
3880
3881```
3882struct OhosImageSize OhosImageDecodingOps::size
3883```
3884**描述**
3885定义解码目标像素宽高的大小
3886
3887**起始版本:** 10
3888
3889
3890### size [3/7]
3891
3892```
3893struct OhosImageSize OhosImageSourceInfo::size
3894```
3895**描述**
3896图像源像素宽高的大小
3897
3898**起始版本:** 10
3899
3900
3901### size [4/7]
3902
3903```
3904size_t OhosImageSourceDelayTimeList::size = 0
3905```
3906**描述**
3907图像源延迟时间列表大小
3908
3909**起始版本:** 10
3910
3911
3912### size [5/7]
3913
3914```
3915size_t OhosImageSourceSupportedFormat::size = 0
3916```
3917**描述**
3918图像源支持的格式字符串大小
3919
3920**起始版本:** 10
3921
3922
3923### size [6/7]
3924
3925```
3926size_t OhosImageSourceSupportedFormatList::size = 0
3927```
3928**描述**
3929图像源支持的格式字符串列表大小
3930
3931**起始版本:** 10
3932
3933
3934### size [7/7]
3935
3936```
3937size_t OhosImageSourceProperty::size = 0
3938```
3939**描述**
3940定义图像源属性键值字符串大小
3941
3942**起始版本:** 10
3943
3944
3945### supportedFormatList
3946
3947```
3948struct OhosImageSourceSupportedFormat** OhosImageSourceSupportedFormatList::supportedFormatList = nullptr
3949```
3950**描述**
3951图像源支持的格式字符串列表头地址
3952
3953**起始版本:** 10
3954
3955
3956### updateLength
3957
3958```
3959uint32_t OhosImageSourceUpdateData::updateLength = 0
3960```
3961**描述**
3962图像源更新数据缓冲区的更新数据长度
3963
3964**起始版本:** 10
3965
3966
3967### uri
3968
3969```
3970char* OhosImageSource::uri = nullptr
3971```
3972**描述**
3973图像源资源标识符,接受文件资源或者base64资源
3974
3975**起始版本:** 10
3976
3977
3978### uriSize
3979
3980```
3981size_t OhosImageSource::uriSize = 0
3982```
3983**描述**
3984图像源资源长度
3985
3986**起始版本:** 10
3987
3988
3989### value
3990
3991```
3992char* OhosImageSourceProperty::value = nullptr
3993```
3994**描述**
3995定义图像源属性键值字符串头地址
3996
3997**起始版本:** 10
3998
3999
4000### width
4001
4002```
4003int32_t OhosImageRegion::width
4004```
4005**描述**
4006宽度范围,用pixels表示
4007
4008**起始版本:** 10
4009
4010
4011### x
4012
4013```
4014int32_t OhosImageRegion::x
4015```
4016**描述**
4017起始x坐标,用pixels表示
4018
4019**起始版本:** 10
4020
4021
4022### y
4023
4024```
4025int32_t OhosImageRegion::y
4026```
4027**描述**
4028起始y坐标,用pixels表示
4029
4030**起始版本:** 10
4031
4032
4033