diff --git a/zh-cn/application-dev/reference/native-apis/Readme-CN.md b/zh-cn/application-dev/reference/native-apis/Readme-CN.md index 7aa501d67905d674319e612f0a6ed9ad792707af..a4c69e7b287af84c564ee6a69cc37eaee7144938 100644 --- a/zh-cn/application-dev/reference/native-apis/Readme-CN.md +++ b/zh-cn/application-dev/reference/native-apis/Readme-CN.md @@ -72,6 +72,7 @@ - [OH_NativeXComponent_TouchPoint](_o_h___native_x_component___touch_point.md) - [OHExtDataHandle](_o_h_ext_data_handle.md) - [OHHDRMetaData](_o_h_h_d_r_meta_data.md) + - [OhosPixelMapCreateOps](_ohos_pixel_map_create_ops.md) - [OhosPixelMapInfo](_ohos_pixel_map_info.md) - [RawFileDescriptor](_raw_file_descriptor.md) - [Region](_region.md) diff --git a/zh-cn/application-dev/reference/native-apis/_ohos_pixel_map_create_ops.md b/zh-cn/application-dev/reference/native-apis/_ohos_pixel_map_create_ops.md new file mode 100644 index 0000000000000000000000000000000000000000..fc1d773263c4a001d7396220b4fe18f019a73dd3 --- /dev/null +++ b/zh-cn/application-dev/reference/native-apis/_ohos_pixel_map_create_ops.md @@ -0,0 +1,91 @@ +# OhosPixelMapCreateOps + + +## 概述 + +用于定义创建 pixel map 设置选项的相关信息. + +**起始版本:** +9 + +**相关模块:** + +[Image](image.md) + + +## 汇总 + + +### 成员变量 + +| 名称 | 描述 | +| -------- | -------- | +| [width](#width) | 图片的宽,用pixels表示。 | +| [height](#height) | 图片的高,用pixels表示。 | +| [pixelFormat](#pixelformat) | 图片的格式。 | +| [editable](#editable) | 图片的编辑类型。 | +| [alphaType](#alphatype) | 图片的alpha类型。 | +| [scaleMode](#scalemode) | 图片的缩放类型。 | + + +## 结构体成员变量说明 + + +### alphaType + + +``` +uint32_t OhosPixelMapCreateOps::alphaType +``` +**描述:** +图片的alpha类型。 + + +### editable + + +``` +uint32_t OhosPixelMapCreateOps::editable +``` +**描述:** +图片的编辑类型。 + + +### height + + +``` +uint32_t OhosPixelMapCreateOps::height +``` +**描述:** +图片的高,用pixels表示。 + + +### pixelFormat + + +``` +int32_t OhosPixelMapCreateOps::pixelFormat +``` +**描述:** +图片的格式。 + + +### scaleMode + + +``` +uint32_t OhosPixelMapCreateOps::scaleMode +``` +**描述:** +图片的缩放类型。 + + +### width + + +``` +uint32_t OhosPixelMapCreateOps::width +``` +**描述:** +图片的宽,用pixels表示。 diff --git a/zh-cn/application-dev/reference/native-apis/image.md b/zh-cn/application-dev/reference/native-apis/image.md index cf797efca64d6f5a7675551bc9aba9c66dbcbb5f..d6ac40591e33ceec935da528326be6c60c95dedf 100644 --- a/zh-cn/application-dev/reference/native-apis/image.md +++ b/zh-cn/application-dev/reference/native-apis/image.md @@ -28,26 +28,65 @@ | 结构体名称 | 描述 | | -------- | -------- | | [OhosPixelMapInfo](_ohos_pixel_map_info.md) | 用于定义 pixel map 的相关信息。 | +| [OhosPixelMapCreateOps](_ohos_pixel_map_create_ops.md) | 用于定义创建 pixel map 设置选项的相关信息。| + + +### 类型定义 + +| 名称 | 描述 | +| -------- | -------- | +| [NativePixelMap](#nativepixelmap) | 用于定义NativePixelMap数据类型名称。| ### 枚举 -| 枚举名称 | 描述 | +| 名称 | 描述 | | -------- | -------- | -| { OHOS_IMAGE_RESULT_SUCCESS = 0,
OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 } | 函数方法返回值的错误码的枚举。 | -| { OHOS_PIXEL_MAP_FORMAT_NONE = 0,
OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3,
OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 } | pixel 格式的枚举。 | +| { OHOS_IMAGE_RESULT_SUCCESS = 0, OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 } | 函数方法返回值的错误码的枚举。| +| { OHOS_PIXEL_MAP_FORMAT_NONE = 0, OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3, OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 } | pixel 格式的枚举。| +| { OHOS_PIXEL_MAP_ALPHA_TYPE_UNKNOWN = 0, OHOS_PIXEL_MAP_ALPHA_TYPE_OPAQUE = 1, OHOS_PIXEL_MAP_ALPHA_TYPE_PREMUL = 2, OHOS_PIXEL_MAP_ALPHA_TYPE_UNPREMUL = 3 } | PixelMap alpha 类型的枚举。| +| { OHOS_PIXEL_MAP_SCALE_MODE_FIT_TARGET_SIZE = 0, OHOS_PIXEL_MAP_SCALE_MODE_CENTER_CROP = 1 } | PixelMap 缩放类型的枚举。| +| { OHOS_PIXEL_MAP_READ_ONLY = 0, OHOS_PIXEL_MAP_EDITABLE = 1 } | PixelMap 编辑类型的枚举。| ### 函数 -| 函数名称 | 描述 | +| 名称 | 描述 | | -------- | -------- | -| [OH_GetImageInfo](#oh_getimageinfo) (napi_env env, napi_value value, [OhosPixelMapInfo](_ohos_pixel_map_info.md) \*info) | 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。 | -| [OH_AccessPixels](#oh_accesspixels) (napi_env env, napi_value value, void \*\*addrPtr) | 获取**PixelMap**对象数据的内存地址,并锁定该内存。 | -| [OH_UnAccessPixels](#oh_unaccesspixels) (napi_env env, napi_value value) | 释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels)。 | - +| [OH_GetImageInfo](#oh_getimageinfo) (napi_env env, napi_value value, [OhosPixelMapInfo](_ohos_pixel_map_info.md) \*info) | 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。| +| [OH_AccessPixels](#oh_accesspixels) (napi_env env, napi_value value, void \*\*addrPtr) | 获取**PixelMap**对象数据的内存地址,并锁定该内存。| +| [OH_UnAccessPixels](#oh_unaccesspixels) (napi_env env, napi_value value) | 释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels)。| +| [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**对象。| +| [OH_PixelMap_CreateAlphaPixelMap](#oh_pixelmap_createalphapixelmap) (napi_env env, napi_value source, napi_value \*alpha) | 根据Alpha通道的信息,来生成一个仅包含Alpha通道信息的**PixelMap**对象。| +| [OH_PixelMap_InitNativePixelMap](#oh_pixelmap_initnativepixelmap) (napi_env env, napi_value source) | 初始化**PixelMap**对象数据。| +| [OH_PixelMap_GetBytesNumberPerRow](#oh_pixelmap_getbytesnumberperrow) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*num) | 获取**PixelMap**对象每行字节数。| +| [OH_PixelMap_GetIsEditable](#oh_pixelmap_getiseditable) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*[editable](image__pixel__map__napi_8h.md#editable)) | 获取**PixelMap**对象是否可编辑的状态。| +| [OH_PixelMap_IsSupportAlpha](#oh_pixelmap_issupportalpha) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*alpha) | 获取**PixelMap**对象是否支持Alpha通道。| +| [OH_PixelMap_SetAlphaAble](#oh_pixelmap_setalphaable) (const [NativePixelMap](#nativepixelmap) \*native, int32_t alpha) | 设置**PixelMap**对象的Alpha通道。| +| [OH_PixelMap_GetDensity](#oh_pixelmap_getdensity) (const [NativePixelMap](#nativepixelmap) \*native, int32_t \*density) | 获取**PixelMap**对象像素密度。| +| [OH_PixelMap_SetDensity](#oh_pixelmap_setdensity) (const [NativePixelMap](#nativepixelmap) \*native, int32_t density) | 设置**PixelMap**对象像素密度。| +| [OH_PixelMap_SetOpacity](#oh_pixelmap_setopacity) (const [NativePixelMap](#nativepixelmap) \*native, float opacity) | 设置**PixelMap**对象的透明度。| +| [OH_PixelMap_Scale](#oh_pixelmap_scale) (const [NativePixelMap](#nativepixelmap) \*native, float x, float y) | 设置**PixelMap**对象的缩放。| +| [OH_PixelMap_Translate](#oh_pixelmap_translate) (const [NativePixelMap](#nativepixelmap) \*native, float x, float y) | 设置**PixelMap**对象的偏移。| +| [OH_PixelMap_Rotate](#oh_pixelmap_rotate) (const [NativePixelMap](#nativepixelmap) \*native, float angle) | 设置**PixelMap**对象的旋转。| +| [OH_PixelMap_Flip](#oh_pixelmap_flip) (const [NativePixelMap](#nativepixelmap) \*native, int32_t x, int32_t y) | 设置**PixelMap**对象的翻转。| +| [OH_PixelMap_Crop](#oh_pixelmap_crop) (const [NativePixelMap](#nativepixelmap) \*native, int32_t x, int32_t y, int32_t [width](image__pixel__map__napi_8h.md#width), int32_t [height](image__pixel__map__napi_8h.md#height)) | 设置**PixelMap**对象的裁剪。| + + +## 类型定义说明 + + +### NativePixelMap + + +``` +typedef struct NativePixelMap +``` +**描述:** +用于定义NativePixelMap数据类型名称。 -## 详细描述 +**起始版本:** +9 ## 枚举类型说明 @@ -55,45 +94,92 @@ ### anonymous enum - + ``` anonymous enum ``` - -**描述:** - +**描述:** 函数方法返回值的错误码的枚举。 -| 枚举值 | 描述 | +| 枚举值 | 描述 | | -------- | -------- | -| OHOS_IMAGE_RESULT_SUCCESS | 成功的结果。 | -| OHOS_IMAGE_RESULT_BAD_PARAMETER | 无效值。 | +| OHOS_IMAGE_RESULT_SUCCESS| 成功的结果 | +| OHOS_IMAGE_RESULT_BAD_PARAMETER| 无效值 | **起始版本:** - 8 - ### anonymous enum + +``` +anonymous enum +``` +**描述:** +pixel 格式的枚举。 +| 枚举值 | 描述 | +| -------- | -------- | +| OHOS_PIXEL_MAP_FORMAT_NONE| 未知的格式 | +| OHOS_PIXEL_MAP_FORMAT_RGBA_8888| 32-bit RGBA。 由 R, G, B组成,包括 A 都需要占用 8 bits。存储顺序是从高位到低位。 | +| OHOS_PIXEL_MAP_FORMAT_RGB_565| 16-bit RGB。 仅由 R, G, B 组成. 存储顺序是从高位到低位: 红色占用5 bits,绿色占用6 bits,蓝色占用5 bits。 | + +**起始版本:** +8 + +### anonymous enum + + ``` anonymous enum ``` +**描述:** +PixelMap alpha 类型的枚举。 -**描述:** +| 枚举值 | 描述 | +| -------- | -------- | +| OHOS_PIXEL_MAP_ALPHA_TYPE_UNKNOWN| 未知的格式 | +| OHOS_PIXEL_MAP_ALPHA_TYPE_OPAQUE| 不透明的格式 | +| OHOS_PIXEL_MAP_ALPHA_TYPE_PREMUL| 预乘的格式 | +| OHOS_PIXEL_MAP_ALPHA_TYPE_UNPREMUL| 预除的格式 | -pixel 格式的枚举。 +**起始版本:** +9 + +### anonymous enum + + +``` +anonymous enum +``` +**描述:** +PixelMap 缩放类型的枚举。 -| 枚举值 | 描述 | +| 枚举值 | 描述 | | -------- | -------- | -| OHOS_PIXEL_MAP_FORMAT_NONE | 未知的格式。 | -| OHOS_PIXEL_MAP_FORMAT_RGBA_8888 | 32-bit RGBA。由 R, G, B组成,包括 A 都需要占用 8 bits。存储顺序是从高位到低位。 | -| OHOS_PIXEL_MAP_FORMAT_RGB_565 | 16-bit RGB。仅由 R, G, B 组成。存储顺序是从高位到低位: 红色占用5 bits,绿色占用6 bits,蓝色占用5 bits。 | +| OHOS_PIXEL_MAP_SCALE_MODE_FIT_TARGET_SIZE| 适应目标图片大小的格式 | +| OHOS_PIXEL_MAP_SCALE_MODE_CENTER_CROP| 以中心进行缩放的格式 | -**起始版本:** +**起始版本:** +9 -8 + +### anonymous enum + + +``` +anonymous enum +``` +**描述:** +PixelMap 编辑类型的枚举。 + +| 枚举值 | 描述 | +| -------- | -------- | +| OHOS_PIXEL_MAP_READ_ONLY| 只读的格式 | +| OHOS_PIXEL_MAP_EDITABLE| 可编辑的格式 | + +**起始版本:** +9 ## 函数说明 @@ -101,96 +187,517 @@ pixel 格式的枚举。 ### OH_AccessPixels() - + ``` int32_t OH_AccessPixels (napi_env env, napi_value value, void ** addrPtr ) ``` - -**描述:** - +**描述:** 获取**PixelMap**对象数据的内存地址,并锁定该内存。 -函数执行成功后,**\*addrPtr**就是获取的待访问的内存地址。访问操作完成后,必须要使用[OH_UnAccessPixels](#oh_unaccesspixels)来释放锁, 否则的话资源无法被释放。待解锁后,内存地址就不可以再被访问和操作。 +函数执行成功后,**\*addrPtr**就是获取的待访问的内存地址. 访问操作完成后,必须要使用[OH_UnAccessPixels](#oh_unaccesspixels)来释放锁, 否则的话资源无法被释放. 待解锁后,内存地址就不可以再被访问和操作。 -**参数:** +**参数:** -| Name | 描述 | +| 名称 | 描述 | | -------- | -------- | -| env | napi的环境指针。 | -| value | 应用层的 **PixelMap** 对象。 | -| addrPtr | 用于指向的内存地址的双指针对象。 | +| env | napi的环境指针。| +| value | 应用层的 **PixelMap** 对象。| +| addrPtr | 用于指向的内存地址的双指针对象。| -**参见:** +**参见:** -[OH_UnAccessPixels](#oh_unaccesspixels) +UnAccessPixels -**返回:** +**返回:** -操作成功则返回OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。 +操作成功则返回 OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。 **起始版本:** - 8 ### OH_GetImageInfo() - + ``` -int32_t OH_GetImageInfo (napi_env env, napi_value value, OhosPixelMapInfo * info ) +struct OhosPixelMapCreateOps OH_GetImageInfo (napi_env env, napi_value value, OhosPixelMapInfo * info ) ``` - -**描述:** - +**描述:** 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。 -**参数:** +**参数:** -| Name | 描述 | +| 名称 | 描述 | | -------- | -------- | -| env | napi的环境指针。 | -| value | 应用层的 **PixelMap** 对象。 | -| info | 用于保存信息的指针对象。更多细节, 参看 [OhosPixelMapInfo](_ohos_pixel_map_info.md)。 | +| env | napi的环境指针。| +| value | 应用层的 **PixelMap** 对象。| +| info | 用于保存信息的指针对象. 更多细节, 参看 [OhosPixelMapInfo](_ohos_pixel_map_info.md)。| -**返回:** +**返回:** 如果获取并保存信息成功,则返回**0**; 如果操作失败,则返回错误码。 -**参见:** +**参见:** [OhosPixelMapInfo](_ohos_pixel_map_info.md) **起始版本:** - 8 -### OH_UnAccessPixels() +### OH_PixelMap_CreateAlphaPixelMap() + + +``` +int32_t OH_PixelMap_CreateAlphaPixelMap (napi_env env, napi_value source, napi_value * alpha ) +``` +**描述:** +根据Alpha通道的信息,来生成一个仅包含Alpha通道信息的**PixelMap**对象。 + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| env | napi的环境指针。| +| source | **PixelMap**数据设置项。| +| alpha | alpha通道的指针。| + +**返回:** + +操作成功则返回 **PixelMap** 对象; 如果操作失败,则返回错误码。 + +**参见:** + +CreateAlphaPixelMap + +**起始版本:** +9 +### OH_PixelMap_CreatePixelMap() + + ``` -int32_t OH_UnAccessPixels (napi_env env, napi_value value ) +int32_t OH_PixelMap_CreatePixelMap (napi_env env, OhosPixelMapCreateOps info, void * buf, size_t len, napi_value * res ) ``` +**描述:** +创建**PixelMap**对象. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| env | napi的环境指针。| +| info | pixel map 数据设置项。| +| buf | 图片的buffer数据。| +| len | 图片大小信息。| +| res | 应用层的 **PixelMap** 对象的指针。| + +**返回:** + +操作成功则返回 **PixelMap** 对象; 如果操作失败,则返回错误码。 + +**参见:** -**描述:** +CreatePixelMap -释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels)。 +**起始版本:** +9 -**参数:** -| Name | 描述 | +### OH_PixelMap_Crop() + + +``` +int32_t OH_PixelMap_Crop (const NativePixelMap * native, int32_t x, int32_t y, int32_t width, int32_t height ) +``` +**描述:** +设置**PixelMap**对象的裁剪. + +**参数:** + +| 名称 | 描述 | | -------- | -------- | -| env | napi的环境指针。 | -| value | 应用层的 **PixelMap** 对象。 | +| native | NativePixelMap的指针。| +| x | 目标图片左上角的x坐标。| +| y | 目标图片左上角的y坐标。| +| width | 裁剪区域的宽度。| +| height | 裁剪区域的高度。| -**返回:** +**返回:** -操作成功则返回OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。 +操作成功则返回**0**; 如果操作失败,则返回错误码。 -**参见:** +**参见:** -AccessPixels +Crop -**起始版本:** +**起始版本:** +9 + + +### OH_PixelMap_Flip() + + +``` +int32_t OH_PixelMap_Flip (const NativePixelMap * native, int32_t x, int32_t y ) +``` +**描述:** +设置**PixelMap**对象的翻转. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| x | 根据水平方向x轴进行图片翻转。| +| y | 根据垂直方向y轴进行图片翻转。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +Flip + +**起始版本:** +9 + + +### OH_PixelMap_GetBytesNumberPerRow() + + +``` +int32_t OH_PixelMap_GetBytesNumberPerRow (const NativePixelMap * native, int32_t * num ) +``` +**描述:** +获取**PixelMap**对象每行字节数. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| num | **PixelMap**对象的每行字节数指针。| + +**返回:** + +操作成功则返回 **PixelMap** 对象每行字节数; 如果操作失败,则返回错误码。 + +**参见:** + +GetBytesNumberPerRow + +**起始版本:** +9 + +### OH_PixelMap_GetDensity() + + +``` +int32_t OH_PixelMap_GetDensity (const NativePixelMap * native, int32_t * density ) +``` +**描述:** +获取**PixelMap**对象像素密度. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| density | 像素密度指针。| + +**返回:** + +操作成功则返回像素密度; 如果操作失败,则返回错误码。 + +**参见:** + +GetDensity + +**起始版本:** +9 + + +### OH_PixelMap_GetIsEditable() + + +``` +int32_t OH_PixelMap_GetIsEditable (const NativePixelMap * native, int32_t * editable ) +``` +**描述:** +获取**PixelMap**对象是否可编辑的状态. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| editable | **PixelMap** 对象是否可编辑的指针。| + +**返回:** + +操作成功则返回编辑类型的枚举值; 如果操作失败,则返回错误码。 + +**参见:** + +GetIsEditable + +**起始版本:** +9 + + +### OH_PixelMap_InitNativePixelMap() + + +``` +NativePixelMap* OH_PixelMap_InitNativePixelMap (napi_env env, napi_value source ) +``` +**描述:** +初始化**PixelMap**对象数据. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| env | napi的环境指针。| +| source | **PixelMap** 数据设置项。| + +**返回:** + +操作成功则返回NativePixelMap的指针; 如果操作失败,则返回错误码。 + +**参见:** + +InitNativePixelMap + +**起始版本:** +9 + + +### OH_PixelMap_IsSupportAlpha() + + +``` +int32_t OH_PixelMap_IsSupportAlpha (const NativePixelMap * native, int32_t * alpha ) +``` +**描述:** +获取**PixelMap**对象是否支持Alpha通道. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| alpha | 是否支持Alpha的指针。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +IsSupportAlpha + +**起始版本:** +9 + + + +### OH_PixelMap_Rotate() + + +``` +int32_t OH_PixelMap_Rotate (const NativePixelMap * native, float angle ) +``` +**描述:** +设置**PixelMap**对象的旋转. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| angle | 旋转角度。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +Rotate + +**起始版本:** +9 + + +### OH_PixelMap_Scale() + + +``` +int32_t OH_PixelMap_Scale (const NativePixelMap * native, float x, float y ) +``` +**描述:** +设置**PixelMap**对象的缩放. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| x | 缩放宽度。| +| y | 缩放高度。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +Scale + +**起始版本:** +9 + + +### OH_PixelMap_SetAlphaAble() + + +``` +int32_t OH_PixelMap_SetAlphaAble (const NativePixelMap * native, int32_t alpha ) +``` +**描述:** +设置**PixelMap**对象的Alpha通道. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| alpha | Alpha通道。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +SetAlphaAble + +**起始版本:** +9 + + +### OH_PixelMap_SetDensity() + + +``` +int32_t OH_PixelMap_SetDensity (const NativePixelMap * native, int32_t density ) +``` +**描述:** +设置**PixelMap**对象像素密度. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| density | 像素密度。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +GetDensity + +**起始版本:** +9 + + +### OH_PixelMap_SetOpacity() + + +``` +int32_t OH_PixelMap_SetOpacity (const NativePixelMap * native, float opacity ) +``` +**描述:** +设置**PixelMap**对象的透明度. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| opacity | 透明度。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +SetOpacity + +**起始版本:** +9 + + +### OH_PixelMap_Translate() + + +``` +int32_t OH_PixelMap_Translate (const NativePixelMap * native, float x, float y ) +``` +**描述:** +设置**PixelMap**对象的偏移. + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| native | NativePixelMap的指针。| +| x | 水平偏移量。| +| y | 垂直偏移量。| + +**返回:** + +操作成功则返回**0**; 如果操作失败,则返回错误码。 + +**参见:** + +Translate + +**起始版本:** +9 + + +### OH_UnAccessPixels() + + +``` +int32_t OH_UnAccessPixels (napi_env env, napi_value value ) +``` +**描述:** +释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](#oh_accesspixels). + +**参数:** + +| 名称 | 描述 | +| -------- | -------- | +| env | napi的环境指针。| +| value | 应用层的 **PixelMap** 对象。| + +**返回:** + +操作成功则返回 OHOS_IMAGE_RESULT_SUCCESS; 如果操作失败,则返回错误码。 + +**参见:** + +AccessPixels +**起始版本:** 8 diff --git a/zh-cn/application-dev/reference/native-apis/image__pixel__map__napi_8h.md b/zh-cn/application-dev/reference/native-apis/image__pixel__map__napi_8h.md index d6efe27a6162db598dc55a9be125708b1e710917..2b375f4330ae4243d5f737345efd9bd78351fab5 100644 --- a/zh-cn/application-dev/reference/native-apis/image__pixel__map__napi_8h.md +++ b/zh-cn/application-dev/reference/native-apis/image__pixel__map__napi_8h.md @@ -19,23 +19,122 @@ ### 结构体 -| 结构体名称 | 描述 | +| 名称 | 描述 | | -------- | -------- | | [OhosPixelMapInfo](_ohos_pixel_map_info.md) | 用于定义 pixel map 的相关信息。 | +| [OhosPixelMapCreateOps](_ohos_pixel_map_create_ops.md) | 用于定义创建 pixel map 设置选项的相关信息。 | + +### 类型定义 + +| 名称 | 描述 | +| -------- | -------- | +| [NativePixelMap](image.md#nativepixelmap) | 用于定义NativePixelMap数据类型名称。 | ### 枚举 -| 枚举名称 | 描述 | +| 名称 | 描述 | | -------- | -------- | -| { OHOS_IMAGE_RESULT_SUCCESS = 0,
OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 } | 函数方法返回值的错误码的枚举。 | -| { OHOS_PIXEL_MAP_FORMAT_NONE = 0,
OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3,
OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 } | pixel 格式的枚举。 | +| { OHOS_IMAGE_RESULT_SUCCESS = 0, OHOS_IMAGE_RESULT_BAD_PARAMETER = -1 } | 函数方法返回值的错误码的枚举。 | +| { OHOS_PIXEL_MAP_FORMAT_NONE = 0, OHOS_PIXEL_MAP_FORMAT_RGBA_8888 = 3, OHOS_PIXEL_MAP_FORMAT_RGB_565 = 2 } | pixel 格式的枚举。 | +| { OHOS_PIXEL_MAP_ALPHA_TYPE_UNKNOWN = 0, OHOS_PIXEL_MAP_ALPHA_TYPE_OPAQUE = 1, OHOS_PIXEL_MAP_ALPHA_TYPE_PREMUL = 2, OHOS_PIXEL_MAP_ALPHA_TYPE_UNPREMUL = 3 } | PixelMap alpha 类型的枚举。 | +| { OHOS_PIXEL_MAP_SCALE_MODE_FIT_TARGET_SIZE = 0, OHOS_PIXEL_MAP_SCALE_MODE_CENTER_CROP = 1 } | PixelMap 缩放类型的枚举。 | +| { OHOS_PIXEL_MAP_READ_ONLY = 0, OHOS_PIXEL_MAP_EDITABLE = 1 } | PixelMap 编辑类型的枚举。 | ### 函数 -| 函数名称 | 描述 | +| 名称 | 描述 | | -------- | -------- | -| [OH_GetImageInfo](image.md#oh_getimageinfo) (napi_env env, napi_value value, [OhosPixelMapInfo](_ohos_pixel_map_info.md) \*info) | 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。 | -| [OH_AccessPixels](image.md#oh_accesspixels) (napi_env env, napi_value value, void \*\*addrPtr) | 获取**PixelMap**对象数据的内存地址,并锁定该内存。 | -| [OH_UnAccessPixels](image.md#oh_unaccesspixels) (napi_env env, napi_value value) | 释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](image.md#oh_accesspixels)。 | +| [OH_GetImageInfo](image.md#oh_getimageinfo) (napi_env env, napi_value value, [OhosPixelMapInfo](_ohos_pixel_map_info.md) \*info) | 获取 **PixelMap** 的信息,并记录信息到[OhosPixelMapInfo](_ohos_pixel_map_info.md)结构中。 | +| [OH_AccessPixels](image.md#oh_accesspixels) (napi_env env, napi_value value, void \*\*addrPtr) | 获取**PixelMap**对象数据的内存地址,并锁定该内存。 | +| [OH_UnAccessPixels](image.md#oh_unaccesspixels) (napi_env env, napi_value value) | 释放**PixelMap**对象数据的内存锁, 用于匹配方法[OH_AccessPixels](image.md#oh_accesspixels)。 | +| [OH_PixelMap_CreatePixelMap](image.md#oh_pixelmap_createpixelmap) (napi_env env, [OhosPixelMapCreateOps](_ohos_pixel_map_create_ops.md) info, void \*buf, size_t len, napi_value \*res) | 创建**PixelMap**对象。 | +| [OH_PixelMap_CreateAlphaPixelMap](image.md#oh_pixelmap_createalphapixelmap) (napi_env env, napi_value source, napi_value \*alpha) | 根据Alpha通道的信息,来生成一个仅包含Alpha通道信息的**PixelMap**对象。 | +| [OH_PixelMap_InitNativePixelMap](image.md#oh_pixelmap_initnativepixelmap) (napi_env env, napi_value source) | 初始化**PixelMap**对象数据。 | +| [OH_PixelMap_GetBytesNumberPerRow](image.md#oh_pixelmap_getbytesnumberperrow) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t \*num) | 获取**PixelMap**对象每行字节数。 | +| [OH_PixelMap_GetIsEditable](image.md#oh_pixelmap_getiseditable) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t \*[editable](#editable)) | 获取**PixelMap**对象是否可编辑的状态。 | +| [OH_PixelMap_IsSupportAlpha](image.md#oh_pixelmap_issupportalpha) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t \*alpha) | 获取**PixelMap**对象是否支持Alpha通道。 | +| [OH_PixelMap_SetAlphaAble](image.md#oh_pixelmap_setalphaable) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t alpha) | 设置**PixelMap**对象的Alpha通道。 | +| [OH_PixelMap_GetDensity](image.md#oh_pixelmap_getdensity) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t \*density) | 获取**PixelMap**对象像素密度。 | +| [OH_PixelMap_SetDensity](image.md#oh_pixelmap_setdensity) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t density) | 设置**PixelMap**对象像素密度。 | +| [OH_PixelMap_SetOpacity](image.md#oh_pixelmap_setopacity) (const [NativePixelMap](image.md#nativepixelmap) \*native, float opacity) | 设置**PixelMap**对象的透明度。 | +| [OH_PixelMap_Scale](image.md#oh_pixelmap_scale) (const [NativePixelMap](image.md#nativepixelmap) \*native, float x, float y) | 设置**PixelMap**对象的缩放。 | +| [OH_PixelMap_Translate](image.md#oh_pixelmap_translate) (const [NativePixelMap](image.md#nativepixelmap) \*native, float x, float y) | 设置**PixelMap**对象的偏移。 | +| [OH_PixelMap_Rotate](image.md#oh_pixelmap_rotate) (const [NativePixelMap](image.md#nativepixelmap) \*native, float angle) | 设置**PixelMap**对象的旋转。 | +| [OH_PixelMap_Flip](image.md#oh_pixelmap_flip) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t x, int32_t y) | 设置**PixelMap**对象的翻转。 | +| [OH_PixelMap_Crop](image.md#oh_pixelmap_crop) (const [NativePixelMap](image.md#nativepixelmap) \*native, int32_t x, int32_t y, int32_t [width](#width), int32_t [height](#height)) | 设置**PixelMap**对象的裁剪。 | + +### 变量 + +| 名称 | 描述 | +| -------- | -------- | +| [width](#width) | 图片的宽, 用pixels表示。| +| [height](#height) | 图片的高, 用pixels表示。| +| [pixelFormat](#pixelformat) | 图片的格式。| +| [editable](#editable) | 图片的编辑类型。| +| [alphaType](#alphatype) | 图片的alpha类型。| +| [scaleMode](#scalemode) | 图片的缩放类型。| + +## 变量说明 + + +### alphaType + + +``` +uint32_t alphaType +``` +**描述:** +图片的alpha类型。 + + +### editable + + +``` +uint32_t editable +``` +**描述:** +图片的编辑类型。 + + +### height + + +``` +uint32_t height +``` +**描述:** +图片的高, 用pixels表示。 + + +### pixelFormat + + +``` +int32_t pixelFormat +``` +**描述:** +图片的格式。 + + +### scaleMode + + +``` +uint32_t scaleMode +``` +**描述:** +图片的缩放类型。 + + +### width + + +``` +uint32_t width +``` +**描述:** +图片的宽, 用pixels表示。 +