harmony 鸿蒙image_mdk.h

  • 2025-06-12
  • 浏览 (2)

image_mdk.h

概述

声明访问图像矩形、大小、格式和组件数据的函数。

库: libimage_ndk.z.so

系统能力: SystemCapability.Multimedia.Image

起始版本: 10

相关模块: Image

汇总

结构体

|名称|typedef关键字|描述| |–|–|–| |OhosImageRect|-|定义图像矩形信息。| |ImageNative_|ImageNative|为图像接口定义native层图像对象。| |OhosImageComponent|-|定义图像组成信息。|

枚举

|名称|描述| |–|–| |图像格式|图像格式枚举值。| |图像颜色通道类型|图像颜色通道类型枚举值。|

函数

|名称|描述| |–|–| |ImageNative* OH_Image_InitImageNative(napi_env env, napi_value source)|从输入的JavaScript Native API图像对象中解析native ImageNative对象。| |int32_t OH_Image_ClipRect(const ImageNative* native, struct OhosImageRect* rect)|获取native ImageNative对象OhosImageRect信息。| |int32_t OH_Image_Size(const ImageNative* native, struct OhosImageSize* size)|获取native ImageNative对象的OhosImageSize信息。| |int32_t OH_Image_Format(const ImageNative* native, int32_t* format)|获取native ImageNative对象的图像格式。| |int32_t OH_Image_GetComponent(const ImageNative* native, int32_t componentType, struct OhosImageComponent* componentNative)| 从native ImageNative对象中获取OhosImageComponent。| |int32_t OH_Image_Release(ImageNative* native)|释放ImageNative native对象。
这个方法无法释放JavaScript Native API Image对象,而是释放被OH_Image_InitImageNative解析的ImageNative native对象。|

枚举类型说明

图像格式

enum anonymous enum

描述

图像格式枚举值。

起始版本: 10

|枚举项|描述| |–|–| |OHOS_IMAGE_FORMAT_YCBCR_422_SP = 1000|YCBCR422 semi-planar格式。| |OHOS_IMAGE_FORMAT_JPEG = 2000|JPEG编码格式。|

图像颜色通道类型

enum anonymous enum

描述

图像颜色通道类型枚举值。

起始版本: 10

|枚举项|描述| |–|–| |OHOS_IMAGE_COMPONENT_FORMAT_YUV_Y = 1|亮度信息。| |OHOS_IMAGE_COMPONENT_FORMAT_YUV_U = 2|色度信息。| |OHOS_IMAGE_COMPONENT_FORMAT_YUV_V = 3|色差值信息。| |OHOS_IMAGE_COMPONENT_FORMAT_JPEG = 4|Jpeg格式。|

函数说明

OH_Image_InitImageNative()

ImageNative* OH_Image_InitImageNative(napi_env env, napi_value source)

描述

从输入的JavaScript Native API图像对象中解析native ImageNative对象。

起始版本: 10

参数:

|参数项|描述| |–|–| |napi_env env|表示指向JNI环境的指针。| |napi_value source|表示JavaScript Native API图像对象。|

返回:

|类型|说明| |–|–| |ImageNative*|如果操作成功返回ImageNative指针对象,如果操作失败返回空指针。|

参考:

OH_Image_Release

OH_Image_ClipRect()

int32_t OH_Image_ClipRect(const ImageNative* native, struct OhosImageRect* rect)

描述

获取native ImageNative对象OhosImageRect信息。

起始版本: 10

参数:

|参数项|描述| |–|–| |const ImageNative* native|表示指向ImageNative native层对象的指针。| |struct OhosImageRect* rect|表示作为转换结果的OhosImageRect对象指针。|

返回:

|类型|说明| |–|–| |int32_t|IRNdkErrCode
IMAGE_RESULT_SUCCESS:操作成功。
IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。
IMAGE_RESULT_INVALID_PARAMETER:参数无效。
IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。
IMAGE_RESULT_BAD_PARAMETER:参数错误。|

OH_Image_Size()

int32_t OH_Image_Size(const ImageNative* native, struct OhosImageSize* size)

描述

获取native ImageNative对象的OhosImageSize信息。

如果ImageNative对象所存储的是相机预览流数据,即YUV图像数据,那么获取到的OhosImageSize中的宽高分别对应YUV图像的宽高;如果ImageNative对象所存储的是相机拍照流数据,即JPEG图像,由于已经是编码后的数据,OhosImageSize中的宽等于JPEG数据大小,高等于1。

ImageNative对象所存储的数据是预览流还是拍照流,取决于应用将receiver中的surfaceId传给相机的previewOutput还是captureOutput。相机预览与拍照最佳实践请参考预览流二次处理(C/C++)拍照(C/C++)

起始版本: 10

参数:

|参数项|描述| |–|–| |const ImageNative* native|表示ImageNative native对象的指针。| |struct OhosImageSize* size|表示作为转换结果的OhosImageSize对象的指针。|

返回:

|类型|说明| |–|–| |int32_t|IRNdkErrCode
IMAGE_RESULT_SUCCESS:操作成功。
IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。
IMAGE_RESULT_INVALID_PARAMETER:参数无效。
IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。
IMAGE_RESULT_BAD_PARAMETER:参数错误。|

OH_Image_Format()

int32_t OH_Image_Format(const ImageNative* native, int32_t* format)

描述

获取native ImageNative对象的图像格式。

起始版本: 10

参数:

|参数项|描述| |–|–| |const ImageNative* native|表示ImageNative native对象的指针。| |int32_t* format|表示作为转换结果的图像格式对象的指针。|

返回:

|类型|说明| |–|–| |int32_t|IRNdkErrCode
IMAGE_RESULT_SUCCESS:操作成功。
IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。
IMAGE_RESULT_INVALID_PARAMETER:参数无效。
IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。
IMAGE_RESULT_BAD_PARAMETER:参数错误。|

OH_Image_GetComponent()

int32_t OH_Image_GetComponent(const ImageNative* native, int32_t componentType, struct OhosImageComponent* componentNative)

描述

从native ImageNative对象中获取OhosImageComponent。

起始版本: 10

参数:

|参数项|描述| |–|–| |const ImageNative* native|表示ImageNative native对象的指针。| |int32_t componentType|表示所需组件的组件类型。| |struct OhosImageComponent* componentNative|表示转换结果的OhosImageComponent对象的指针。|

返回:

|类型|说明| |–|–| |int32_t|IRNdkErrCode
IMAGE_RESULT_SUCCESS:操作成功。
IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。
IMAGE_RESULT_INVALID_PARAMETER:参数无效。
IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。
IMAGE_RESULT_BAD_PARAMETER:参数错误。|

OH_Image_Release()

int32_t OH_Image_Release(ImageNative* native)

描述

释放ImageNative native对象。

这个方法无法释放JavaScript Native API Image对象,而是释放被OH_Image_InitImageNative解析的ImageNative native对象。

起始版本: 10

参数:

|参数项|描述| |–|–| |ImageNative* native|表示ImageNative native对象的指针。|

返回:

|类型|说明| |–|–| |int32_t|IRNdkErrCode
IMAGE_RESULT_SUCCESS:操作成功。
IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。
IMAGE_RESULT_INVALID_PARAMETER:参数无效。
IMAGE_RESULT_BAD_PARAMETER:参数错误。|

参考:

OH_Image_InitImageNative

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Image Kit(图片处理服务)

harmony 鸿蒙Interface (AuxiliaryPicture)

harmony 鸿蒙Interface (Image)

harmony 鸿蒙Interface (ImageCreator)

harmony 鸿蒙Interface (ImagePacker)

harmony 鸿蒙Interface (ImageReceiver)

harmony 鸿蒙Interface (ImageSource)

harmony 鸿蒙Interface (Metadata)

harmony 鸿蒙Interface (Picture)

harmony 鸿蒙Interface (PixelMap)

0  赞