harmony 鸿蒙pixelmap_native.h
pixelmap_native.h
概述
访问Pixelmap的API。
引用文件:
库: libpixelmap.so
起始版本: 12
相关模块: Image_NativeModule
汇总
结构体
|名称|typedef关键字|描述| |–|–|–| |OH_PixelmapNative|OH_PixelmapNative|OH_PixelmapNative结构体是native层封装的图像解码后无压缩的位图格式结构体。| |OH_NativeBuffer|OH_NativeBuffer|NativeBuffer结构体类型,用于执行NativeBuffer相关操作。| |OH_Pixelmap_HdrStaticMetadata|OH_Pixelmap_HdrStaticMetadata|HDR_STATIC_METADATA关键字对应的静态元数据值。| |OH_NativeColorSpaceManager|OH_NativeColorSpaceManager|NativeColorSpaceManager结构体类型,用于执行NativeColorSpaceManager相关操作。| |OH_Pixelmap_HdrDynamicMetadata|OH_Pixelmap_HdrDynamicMetadata|DR_DYNAMIC_METADATA关键字对应的动态元数据值。| |OH_Pixelmap_HdrGainmapMetadata|OH_Pixelmap_HdrGainmapMetadata|HDR_GAINMAP_METADATA关键字对应的gainmap相关元数据值,参考ISO 21496-1。| |OH_Pixelmap_HdrMetadataValue|OH_Pixelmap_HdrMetadataValue|Pixelmap使用的HDR元数据值,和OH_Pixelmap_HdrMetadataKey关键字相对应。| |OH_Pixelmap_InitializationOptions|OH_Pixelmap_InitializationOptions|OH_Pixelmap_InitializationOptions是native层封装的初始化参数结构体,用于设置Pixelmap的初始化参数。| |OH_Pixelmap_ImageInfo|OH_Pixelmap_ImageInfo|OH_Pixelmap_ImageInfo是native层封装的图像像素信息结构体,保存图像像素的宽高、行跨距、像素格式、是否是HDR。|
枚举
|名称|typedef关键字|描述| |–|–|–| |PIXELMAP_ALPHA_TYPE|PIXELMAP_ALPHA_TYPE|Pixelmap透明度类型。| |PIXEL_FORMAT|PIXEL_FORMAT|图片像素格式。| |OH_PixelmapNative_AntiAliasingLevel|OH_PixelmapNative_AntiAliasingLevel|Pixelmap缩放时采用的缩放算法。| |OH_Pixelmap_HdrMetadataKey|OH_Pixelmap_HdrMetadataKey|Pixelmap使用的HDR相关元数据信息的关键字,用于OH_PixelmapNative_SetMetadata及OH_PixelmapNative_GetMetadata。| |OH_Pixelmap_HdrMetadataType|OH_Pixelmap_HdrMetadataType|HDR_METADATA_TYPE关键字对应的值。|
函数
|名称|描述|
|–|–|
|Image_ErrorCode OH_PixelmapInitializationOptions_Create(OH_Pixelmap_InitializationOptions **options)|创建OH_Pixelmap_InitializationOptions指针。|
|Image_ErrorCode OH_PixelmapInitializationOptions_GetWidth(OH_Pixelmap_InitializationOptions *options,uint32_t *width)|获取图片宽。|
|Image_ErrorCode OH_PixelmapInitializationOptions_SetWidth(OH_Pixelmap_InitializationOptions *options,uint32_t width)|设置图片宽。|
|Image_ErrorCode OH_PixelmapInitializationOptions_GetHeight(OH_Pixelmap_InitializationOptions *options,uint32_t *height)|获取图片高。|
|Image_ErrorCode OH_PixelmapInitializationOptions_SetHeight(OH_Pixelmap_InitializationOptions *options,uint32_t height)|设置图片高。|
|Image_ErrorCode OH_PixelmapInitializationOptions_GetPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t *pixelFormat)|获取像素格式。|
|Image_ErrorCode OH_PixelmapInitializationOptions_SetPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t pixelFormat)|设置像素格式。|
|Image_ErrorCode OH_PixelmapInitializationOptions_GetSrcPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t *srcpixelFormat)|获取源像素格式。|
|Image_ErrorCode OH_PixelmapInitializationOptions_SetSrcPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t srcpixelFormat)|设置源像素格式。|
|Image_ErrorCode OH_PixelmapInitializationOptions_GetRowStride(OH_Pixelmap_InitializationOptions *options,int32_t *rowStride)|获取行跨距。
跨距,图像每行占用的真实内存大小,单位为字节。跨距 = width * 单位像素字节数 + padding,padding为每行为内存对齐做的填充区域。|
|Image_ErrorCode OH_PixelmapInitializationOptions_SetRowStride(OH_Pixelmap_InitializationOptions *options,int32_t rowStride)|设置图像跨距。
跨距,图像每行占用的真实内存大小,单位为字节。跨距 = width * 单位像素字节数 + padding,padding为每行为内存对齐做的填充区域。|
|Image_ErrorCode OH_PixelmapInitializationOptions_GetAlphaType(OH_Pixelmap_InitializationOptions *options,int32_t *alphaType)|获取透明度类型。|
|Image_ErrorCode OH_PixelmapInitializationOptions_SetAlphaType(OH_Pixelmap_InitializationOptions *options,int32_t alphaType)|设置透明度类型。|
|Image_ErrorCode OH_PixelmapInitializationOptions_GetEditable(OH_Pixelmap_InitializationOptions *options,bool *editable)|获取可编辑标志。|
|Image_ErrorCode OH_PixelmapInitializationOptions_SetEditable(OH_Pixelmap_InitializationOptions *options,bool editable)|设置可编辑标志。|
|Image_ErrorCode OH_PixelmapInitializationOptions_Release(OH_Pixelmap_InitializationOptions *options)|释放OH_Pixelmap_InitializationOptions指针。|
|Image_ErrorCode OH_PixelmapImageInfo_Create(OH_Pixelmap_ImageInfo **info)|创建OH_Pixelmap_ImageInfo指针。|
|Image_ErrorCode OH_PixelmapImageInfo_GetWidth(OH_Pixelmap_ImageInfo *info, uint32_t *width)|获取图片宽。|
|Image_ErrorCode OH_PixelmapImageInfo_GetHeight(OH_Pixelmap_ImageInfo *info, uint32_t *height)|获取图片高。|
|Image_ErrorCode OH_PixelmapImageInfo_GetAlphaMode(OH_Pixelmap_ImageInfo *info, int32_t *AlphaMode)|获取图片alpha格式。|
|Image_ErrorCode OH_PixelmapImageInfo_GetRowStride(OH_Pixelmap_ImageInfo *info, uint32_t *rowStride)|获取行跨距。|
|Image_ErrorCode OH_PixelmapImageInfo_GetPixelFormat(OH_Pixelmap_ImageInfo *info, int32_t *pixelFormat)|获取像素格式。|
|Image_ErrorCode OH_PixelmapImageInfo_GetAlphaType(OH_Pixelmap_ImageInfo *info, int32_t *alphaType)|获取透明度类型。|
|Image_ErrorCode OH_PixelmapImageInfo_GetDynamicRange(OH_Pixelmap_ImageInfo *info, bool *isHdr)|获取Pixelmap是否为高动态范围的信息。|
|Image_ErrorCode OH_PixelmapImageInfo_Release(OH_Pixelmap_ImageInfo *info)|释放OH_Pixelmap_ImageInfo指针。|
|Image_ErrorCode OH_PixelmapNative_CreatePixelmap(uint8_t *data, size_t dataLength,OH_Pixelmap_InitializationOptions *options, OH_PixelmapNative **pixelmap)|通过属性创建PixelMap,默认采用BGRA_8888格式处理数据,其他格式请参考OH_PixelmapInitializationOptions_SetSrcPixelFormat。|
|Image_ErrorCode OH_PixelmapNative_CreatePixelmapUsingAllocator(uint8_t *data, size_t dataLength,OH_Pixelmap_InitializationOptions *options, IMAGE_ALLOCATOR_MODE allocator, OH_PixelmapNative **pixelmap)|根据入参options创建pixelmap,pixelmap使用的内存类型可以通过allocator指定。默认情况下,系统会根据图像类型、图像大小、平台能力等选择内存类型。在处理此接口返回的像素图时,需要考虑步长影响。|
|Image_ErrorCode OH_PixelmapNative_ConvertPixelmapNativeToNapi(napi_env env, OH_PixelmapNative *pixelmapNative,napi_value *pixelmapNapi)|将nativePixelMap对象转换为PixelMapnapi对象。|
|Image_ErrorCode OH_PixelmapNative_ConvertPixelmapNativeFromNapi(napi_env env, napi_value pixelmapNapi,OH_PixelmapNative **pixelmapNative)|将PixelMapnapi对象转换为nativePixelMap对象。|
|Image_ErrorCode OH_PixelmapNative_ReadPixels(OH_PixelmapNative *pixelmap, uint8_t *destination, size_t *bufferSize)|读取图像像素数据,并按照PixelMap的像素格式写入缓冲区中。|
|Image_ErrorCode OH_PixelmapNative_WritePixels(OH_PixelmapNative *pixelmap, uint8_t *source, size_t bufferSize)|读取缓冲区中的图像像素数据,并按照PixelMap的像素格式将结果写入PixelMap。|
|Image_ErrorCode OH_PixelmapNative_GetArgbPixels(OH_PixelmapNative *pixelmap, uint8_t *destination, size_t *bufferSize)|从PixelMap中读取ARGB格式的数据。|
|Image_ErrorCode OH_PixelmapNative_ToSdr(OH_PixelmapNative *pixelmap)|将HDR的图像内容转换为SDR的图像内容。|
|Image_ErrorCode OH_PixelmapNative_GetImageInfo(OH_PixelmapNative *pixelmap, OH_Pixelmap_ImageInfo *imageInfo)|获取图像像素信息。|
|Image_ErrorCode OH_PixelmapNative_Opacity(OH_PixelmapNative *pixelmap, float rate)|通过设置透明比率来让PixelMap达到对应的透明效果。|
|Image_ErrorCode OH_PixelmapNative_Scale(OH_PixelmapNative *pixelmap, float scaleX, float scaleY)|根据输入的宽高对图片进行缩放。|
|Image_ErrorCode OH_PixelmapNative_ScaleWithAntiAliasing(OH_PixelmapNative *pixelmap, float scaleX, float scaleY,OH_PixelmapNative_AntiAliasingLevel level)|根据指定的缩放算法和输入的宽高对图片进行缩放。|
|Image_ErrorCode OH_PixelmapNative_CreateScaledPixelMap(OH_PixelmapNative *srcPixelmap, OH_PixelmapNative **dstPixelmap,float scaleX, float scaleY)|根据输入的宽高的缩放比例,创建一个新的缩放后的图片。|
|Image_ErrorCode OH_PixelmapNative_CreateScaledPixelMapWithAntiAliasing(OH_PixelmapNative *srcPixelmap,OH_PixelmapNative **dstPixelmap, float scaleX, float scaleY, OH_PixelmapNative_AntiAliasingLevel level)|根据指定的缩放算法和输入的宽高的缩放比例,创建一个新的缩放后的图片。|
|Image_ErrorCode OH_PixelmapNative_Translate(OH_PixelmapNative *pixelmap, float x, float y)|根据输入的坐标对图片进行位置变换。|
|Image_ErrorCode OH_PixelmapNative_Rotate(OH_PixelmapNative *pixelmap, float angle)|根据输入的角度对图片进行旋转。|
|Image_ErrorCode OH_PixelmapNative_Flip(OH_PixelmapNative *pixelmap, bool shouldFilpHorizontally, bool shouldFilpVertically)|根据输入的条件对图片进行翻转。|
|Image_ErrorCode OH_PixelmapNative_Crop(OH_PixelmapNative *pixelmap, Image_Region *region)|根据输入的尺寸对图片进行裁剪。|
|Image_ErrorCode OH_PixelmapNative_Release(OH_PixelmapNative *pixelmap)|释放OH_PixelmapNative指针,推荐使用OH_PixelmapNative_Destroy。|
|Image_ErrorCode OH_PixelmapNative_Destroy(OH_PixelmapNative **pixelmap)|释放OH_PixelmapNative指针。|
|Image_ErrorCode OH_PixelmapNative_ConvertAlphaFormat(OH_PixelmapNative* srcpixelmap,OH_PixelmapNative* dstpixelmap, const bool isPremul)|将pixlemap的像素数据做预乘和非预乘之间的转换。|
|Image_ErrorCode OH_PixelmapNative_CreateEmptyPixelmap(OH_Pixelmap_InitializationOptions *options,OH_PixelmapNative **pixelmap)|利用OH_Pixelmap_InitializationOptions创建空的pixelmap对象,内存数据为0。|
|Image_ErrorCode OH_PixelmapNative_CreateEmptyPixelmapUsingAllocator(OH_Pixelmap_InitializationOptions *options, IMAGE_ALLOCATOR_MODE allocator, OH_PixelmapNative **pixelmap)|根据入参options创建空的pixelmap,pixelmap使用的内存类型可以通过allocator指定。默认情况下,系统会根据图像类型、图像大小、平台能力等选择内存类型。在处理此接口返回的像素图时,需要考虑步长影响。|
|Image_ErrorCode OH_PixelmapNative_GetNativeBuffer(OH_PixelmapNative *pixelmap, OH_NativeBuffer **nativeBuffer)|从DMA内存的PixelMap中,获取NativeBuffer对象。|
|Image_ErrorCode OH_PixelmapNative_GetMetadata(OH_PixelmapNative *pixelmap, OH_Pixelmap_HdrMetadataKey key,OH_Pixelmap_HdrMetadataValue **value)|获取元数据。|
|Image_ErrorCode OH_PixelmapNative_SetMetadata(OH_PixelmapNative *pixelmap, OH_Pixelmap_HdrMetadataKey key,OH_Pixelmap_HdrMetadataValue *value)|设置元数据。|
|Image_ErrorCode OH_PixelmapNative_SetColorSpaceNative(OH_PixelmapNative *pixelmap,OH_NativeColorSpaceManager *colorSpaceNative)|设置NativeColorSpaceManager对象。|
|Image_ErrorCode OH_PixelmapNative_GetColorSpaceNative(OH_PixelmapNative *pixelmap,OH_NativeColorSpaceManager **colorSpaceNative)|获取NativeColorSpaceManager对象。|
|Image_ErrorCode OH_PixelmapNative_SetMemoryName(OH_PixelmapNative *pixelmap, char *name, size_t *size)|设置pixelMap内存名字。|
|Image_ErrorCode OH_PixelmapNative_GetByteCount(OH_PixelmapNative *pixelmap, uint32_t *byteCount)|获取Pixelmap中所有像素所占用的总字节数,不包含内存填充。|
|Image_ErrorCode OH_PixelmapNative_GetAllocationByteCount(OH_PixelmapNative *pixelmap, uint32_t *allocationByteCount)|获取Pixelmap用于储存像素数据的内存字节数。|
|Image_ErrorCode OH_PixelmapNative_AccessPixels(OH_PixelmapNative *pixelmap, void **addr)|获取Pixelmap像素数据的内存地址,并锁定这块内存。
当该内存被锁定时,任何修改或释放该Pixelmap的像素数据的操作均会失败或无效。|
|Image_ErrorCode OH_PixelmapNative_UnaccessPixels(OH_PixelmapNative *pixelmap)|释放Pixelmap像素数据的内存锁。
该函数需要与OH_PixelmapNative_AccessPixels匹配使用。|
枚举类型说明
PIXELMAP_ALPHA_TYPE
enum PIXELMAP_ALPHA_TYPE
描述
Pixelmap透明度类型。
起始版本: 12
|枚举项|描述| |–|–| |PIXELMAP_ALPHA_TYPE_UNKNOWN = 0|未知格式。| |PIXELMAP_ALPHA_TYPE_OPAQUE = 1|不透明的格式。| |PIXELMAP_ALPHA_TYPE_PREMULTIPLIED = 2|预乘透明度格式。| |PIXELMAP_ALPHA_TYPE_UNPREMULTIPLIED = 3|非预乘透明度格式。|
PIXEL_FORMAT
enum PIXEL_FORMAT
描述
图片像素格式。
起始版本: 12
|枚举项|描述| |–|–| |PIXEL_FORMAT_UNKNOWN = 0|未知格式。| |PIXEL_FORMAT_RGB_565 = 2|RGB_565格式。| |PIXEL_FORMAT_RGBA_8888 = 3|RGBA_8888格式。| |PIXEL_FORMAT_BGRA_8888 = 4|BGRA_8888格式。| |PIXEL_FORMAT_RGB_888 = 5|RGB_888格式。| |PIXEL_FORMAT_ALPHA_8 = 6|ALPHA_8格式。| |PIXEL_FORMAT_RGBA_F16 = 7|RGBA_F16格式。| |PIXEL_FORMAT_NV21 = 8|NV21格式。| |PIXEL_FORMAT_NV12 = 9|NV12格式。| |PIXEL_FORMAT_RGBA_1010102 = 10|RGBA_1010102格式。| |PIXEL_FORMAT_YCBCR_P010 = 11|YCBCR_P010格式。| |PIXEL_FORMAT_YCRCB_P010 =12|YCRCB_P010格式。|
OH_PixelmapNative_AntiAliasingLevel
enum OH_PixelmapNative_AntiAliasingLevel
描述
Pixelmap缩放时采用的缩放算法。
起始版本: 12
|枚举项|描述| |–|–| |OH_PixelmapNative_AntiAliasing_NONE = 0|最近邻插值算法。| |OH_PixelmapNative_AntiAliasing_LOW = 1|双线性插值算法。| |OH_PixelmapNative_AntiAliasing_MEDIUM = 2|双线性插值算法,同时开启Mipmap。缩小图片时建议使用。| |OH_PixelmapNative_AntiAliasing_HIGH = 3|三次插值算法。|
OH_Pixelmap_HdrMetadataKey
enum OH_Pixelmap_HdrMetadataKey
描述
Pixelmap使用的HDR相关元数据信息的关键字,用于OH_PixelmapNative_SetMetadata及OH_PixelmapNative_GetMetadata。
起始版本: 12
|枚举项|描述| |–|–| |HDR_METADATA_TYPE = 0|Pixelmap使用的元数据类型。| |HDR_STATIC_METADATA = 1|静态元数据。| |HDR_DYNAMIC_METADATA = 2|动态元数据。| |HDR_GAINMAP_METADATA = 3|Gainmap使用的元数据。|
OH_Pixelmap_HdrMetadataType
enum OH_Pixelmap_HdrMetadataType
描述
HDR_METADATA_TYPE关键字对应的值。
起始版本: 12
|枚举项|描述| |–|–| |HDR_METADATA_TYPE_NONE = 0|无元数据内容。| |HDR_METADATA_TYPE_BASE = 1|表示用于基础图的元数据。| |HDR_METADATA_TYPE_GAINMAP = 2|表示用于Gainmap图的元数据。| |HDR_METADATA_TYPE_ALTERNATE = 3|表示用于合成后HDR图的元数据。|
函数说明
OH_PixelmapInitializationOptions_Create()
Image_ErrorCode OH_PixelmapInitializationOptions_Create(OH_Pixelmap_InitializationOptions **options)
描述
创建OH_Pixelmap_InitializationOptions指针。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions **options|被创建的OH_Pixelmap_InitializationOptions指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_GetWidth()
Image_ErrorCode OH_PixelmapInitializationOptions_GetWidth(OH_Pixelmap_InitializationOptions *options,uint32_t *width)
描述
获取图片宽。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |uint32_t *width|图片的宽,单位:像素。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_SetWidth()
Image_ErrorCode OH_PixelmapInitializationOptions_SetWidth(OH_Pixelmap_InitializationOptions *options,uint32_t width)
描述
设置图片宽。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |uint32_t width|图片的宽,单位:像素。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_GetHeight()
Image_ErrorCode OH_PixelmapInitializationOptions_GetHeight(OH_Pixelmap_InitializationOptions *options,uint32_t *height)
描述
获取图片高。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |uint32_t *height|图片的高,单位:像素。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_SetHeight()
Image_ErrorCode OH_PixelmapInitializationOptions_SetHeight(OH_Pixelmap_InitializationOptions *options,uint32_t height)
描述
设置图片高。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |uint32_t height|图片的高,单位:像素。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_GetPixelFormat()
Image_ErrorCode OH_PixelmapInitializationOptions_GetPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t *pixelFormat)
描述
获取像素格式。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t *pixelFormat|像素格式PIXEL_FORMAT。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_SetPixelFormat()
Image_ErrorCode OH_PixelmapInitializationOptions_SetPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t pixelFormat)
描述
设置像素格式。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t pixelFormat|像素格式PIXEL_FORMAT。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_GetSrcPixelFormat()
Image_ErrorCode OH_PixelmapInitializationOptions_GetSrcPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t *srcpixelFormat)
描述
获取源像素格式。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t *srcpixelFormat|像素格式PIXEL_FORMAT。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_SetSrcPixelFormat()
Image_ErrorCode OH_PixelmapInitializationOptions_SetSrcPixelFormat(OH_Pixelmap_InitializationOptions *options,int32_t srcpixelFormat)
描述
设置源像素格式。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t srcpixelFormat|源像素格式PIXEL_FORMAT。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_GetRowStride()
Image_ErrorCode OH_PixelmapInitializationOptions_GetRowStride(OH_Pixelmap_InitializationOptions *options,int32_t *rowStride)
描述
获取行跨距。
跨距,图像每行占用的真实内存大小,单位为字节。跨距 = width * 单位像素字节数 + padding,padding为每行为内存对齐做的填充区域。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t *rowStride|跨距,单位:字节。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNKNOWN_ERROR:options被释放。|
OH_PixelmapInitializationOptions_SetRowStride()
Image_ErrorCode OH_PixelmapInitializationOptions_SetRowStride(OH_Pixelmap_InitializationOptions *options,int32_t rowStride)
描述
设置图像跨距。
跨距,图像每行占用的真实内存大小,单位为字节。跨距 = width * 单位像素字节数 + padding,padding为每行为内存对齐做的填充区域。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t rowStride|跨距,单位:字节。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNKNOWN_ERROR:options被释放。|
OH_PixelmapInitializationOptions_GetAlphaType()
Image_ErrorCode OH_PixelmapInitializationOptions_GetAlphaType(OH_Pixelmap_InitializationOptions *options,int32_t *alphaType)
描述
获取透明度类型。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t *alphaType|透明度类型PIXELMAP_ALPHA_TYPE。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_SetAlphaType()
Image_ErrorCode OH_PixelmapInitializationOptions_SetAlphaType(OH_Pixelmap_InitializationOptions *options,int32_t alphaType)
描述
设置透明度类型。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |int32_t alphaType|透明度类型PIXELMAP_ALPHA_TYPE。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_GetEditable()
Image_ErrorCode OH_PixelmapInitializationOptions_GetEditable(OH_Pixelmap_InitializationOptions *options,bool *editable)
描述
获取可编辑标志。
起始版本: 18
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |bool *editable|可编辑标志。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_SetEditable()
Image_ErrorCode OH_PixelmapInitializationOptions_SetEditable(OH_Pixelmap_InitializationOptions *options,bool editable)
描述
设置可编辑标志。
起始版本: 18
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被操作的OH_Pixelmap_InitializationOptions指针。| |bool editable|可编辑标志。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapInitializationOptions_Release()
Image_ErrorCode OH_PixelmapInitializationOptions_Release(OH_Pixelmap_InitializationOptions *options)
描述
释放OH_Pixelmap_InitializationOptions指针。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|被释放的OH_Pixelmap_InitializationOptions指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_Create()
Image_ErrorCode OH_PixelmapImageInfo_Create(OH_Pixelmap_ImageInfo **info)
描述
创建OH_Pixelmap_ImageInfo指针。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo **info|被创建的OH_Pixelmap_ImageInfo指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_GetWidth()
Image_ErrorCode OH_PixelmapImageInfo_GetWidth(OH_Pixelmap_ImageInfo *info, uint32_t *width)
描述
获取图片宽。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被操作的OH_Pixelmap_ImageInfo指针。| |uint32_t *width|图片宽,单位:像素。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_GetHeight()
Image_ErrorCode OH_PixelmapImageInfo_GetHeight(OH_Pixelmap_ImageInfo *info, uint32_t *height)
描述
获取图片高。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被操作的OH_Pixelmap_ImageInfo指针。| |uint32_t *height|图片高,单位:像素。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_GetAlphaMode()
Image_ErrorCode OH_PixelmapImageInfo_GetAlphaMode(OH_Pixelmap_ImageInfo *info, int32_t *AlphaMode)
描述
获取图片alpha格式。
起始版本: 20
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被操作的OH_Pixelmap_ImageInfo指针。| |int32_t *AlphaMode|被操作的alpha格式的指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_GetRowStride()
Image_ErrorCode OH_PixelmapImageInfo_GetRowStride(OH_Pixelmap_ImageInfo *info, uint32_t *rowStride)
描述
获取行跨距。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被操作的OH_Pixelmap_ImageInfo指针。| |uint32_t *rowStride|跨距,内存中每行像素所占的空间。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_GetPixelFormat()
Image_ErrorCode OH_PixelmapImageInfo_GetPixelFormat(OH_Pixelmap_ImageInfo *info, int32_t *pixelFormat)
描述
获取像素格式。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被操作的OH_Pixelmap_ImageInfo指针。| |int32_t *pixelFormat|像素格式。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_GetAlphaType()
Image_ErrorCode OH_PixelmapImageInfo_GetAlphaType(OH_Pixelmap_ImageInfo *info, int32_t *alphaType)
描述
获取透明度类型。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被操作的OH_Pixelmap_ImageInfo指针。| |int32_t *alphaType|透明度类型PIXELMAP_ALPHA_TYPE。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapImageInfo_GetDynamicRange()
Image_ErrorCode OH_PixelmapImageInfo_GetDynamicRange(OH_Pixelmap_ImageInfo *info, bool *isHdr)
描述
获取Pixelmap是否为高动态范围的信息。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被操作的OH_Pixelmap_ImageInfo指针。| |bool *isHdr|是否为hdr的布尔值。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数校验错误。|
OH_PixelmapImageInfo_Release()
Image_ErrorCode OH_PixelmapImageInfo_Release(OH_Pixelmap_ImageInfo *info)
描述
释放OH_Pixelmap_ImageInfo指针。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_ImageInfo *info|被释放的OH_Pixelmap_ImageInfo指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_CreatePixelmap()
Image_ErrorCode OH_PixelmapNative_CreatePixelmap(uint8_t *data, size_t dataLength,OH_Pixelmap_InitializationOptions *options, OH_PixelmapNative **pixelmap)
描述
通过属性创建PixelMap,默认采用BGRA_8888格式处理数据,其他格式请参考OH_PixelmapInitializationOptions_SetSrcPixelFormat。
起始版本: 12
参数:
|参数项|描述| |–|–| |uint8_t *data|BGRA_8888格式的颜色数组。| |size_t dataLength|数组长度。| |OH_Pixelmap_InitializationOptions *options|创建像素的属性。| |OH_PixelmapNative **pixelmap|被创建的OH_PixelmapNative对象指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNSUPPORTED_OPERATION:操作不支持。|
OH_PixelmapNative_CreatePixelmapUsingAllocator()
Image_ErrorCode OH_PixelmapNative_CreatePixelmapUsingAllocator(uint8_t *data, size_t dataLength,OH_Pixelmap_InitializationOptions *options, IMAGE_ALLOCATOR_MODE allocator, OH_PixelmapNative **pixelmap)
描述
根据入参options创建pixelmap,pixelmap使用的内存类型可以通过allocator指定。默认情况下,系统会根据图像类型、图像大小、平台能力等选择内存类型。在处理此接口返回的像素图时,需要考虑步长影响。
起始版本: 20
参数:
|参数项|描述| |–|–| |uint8_t *data|BGRA_8888格式的数据。| |size_t dataLength|数组长度。| |OH_Pixelmap_InitializationOptions *options|创建pixelmap的选项。| |IMAGE_ALLOCATOR_MODE allocator|决定pixelmap内存分配的类型。| |OH_PixelmapNative **pixelmap|被创建的OH_PixelmapNative对象指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNSUPPORTED_OPERATION:操作不支持。
IMAGE_TOO_LARGE:图像过大,无法分配内存。
IMAGE_DMA_OPERATION_FAILED:DMA内存操作失败。
IMAGE_ALLOCATOR_MODE_UNSUPPORTED:不支持分配当前内存类型。例如,使用共享内存创建HDR图。|
OH_PixelmapNative_ConvertPixelmapNativeToNapi()
Image_ErrorCode OH_PixelmapNative_ConvertPixelmapNativeToNapi(napi_env env, OH_PixelmapNative *pixelmapNative,napi_value *pixelmapNapi)
描述
将nativePixelMap对象转换为PixelMapnapi对象。
起始版本: 12
参数:
|参数项|描述| |–|–| |napi_env env|napi的环境指针。| |OH_PixelmapNative *pixelmapNative|被操作的OH_PixelmapNative指针。| |napi_value *pixelmapNapi|转换出来的PixelMapnapi对象指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:pixelmapNative为空。|
OH_PixelmapNative_ConvertPixelmapNativeFromNapi()
Image_ErrorCode OH_PixelmapNative_ConvertPixelmapNativeFromNapi(napi_env env, napi_value pixelmapNapi,OH_PixelmapNative **pixelmapNative)
描述
将PixelMapnapi对象转换为nativePixelMap对象。
起始版本: 12
参数:
|参数项|描述| |–|–| |napi_env env|napi的环境指针。| |napi_value pixelmapNapi|需要转换的PixelMapnapi对象。| |OH_PixelmapNative **pixelmapNative|转换出的OH_PixelmapNative对象指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:pixelmapNative是nullptr,或者pixelmapNapi不是PixelMapNapi对象。|
OH_PixelmapNative_ReadPixels()
Image_ErrorCode OH_PixelmapNative_ReadPixels(OH_PixelmapNative *pixelmap, uint8_t *destination, size_t *bufferSize)
描述
读取图像像素数据,并按照PixelMap的像素格式写入缓冲区中。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |uint8_t *destination|缓冲区,获取的图像像素数据写入到该内存区域内。| |size_t *bufferSize|缓冲区大小。RGBA格式的缓冲区大小等于width * height * 4,NV21与NV12格式的缓冲区大小等于width * height+((width+1)/2) * ((height+1)/2) * 2。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNKNOWN_ERROR:未知错误。|
OH_PixelmapNative_WritePixels()
Image_ErrorCode OH_PixelmapNative_WritePixels(OH_PixelmapNative *pixelmap, uint8_t *source, size_t bufferSize)
描述
读取缓冲区中的图像像素数据,并按照PixelMap的像素格式将结果写入PixelMap。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |uint8_t *source|图像像素数据。| |size_t bufferSize|图像像素数据长度。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNSUPPORTED_OPERATION:操作不支持。
IMAGE_UNKNOWN_ERROR:未知错误。|
OH_PixelmapNative_GetArgbPixels()
Image_ErrorCode OH_PixelmapNative_GetArgbPixels(OH_PixelmapNative *pixelmap, uint8_t *destination, size_t *bufferSize)
描述
从PixelMap中读取ARGB格式的数据。
起始版本: 13
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |uint8_t *destination|缓冲区,获取的图像像素数据写入到该内存区域内。| |size_t *bufferSize|缓冲区大小。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNSUPPORTED_CONVERSION:PixelMap格式不支持读取ARGB数据。
IMAGE_ALLOC_FAILED:内存申请失败。
IMAGE_COPY_FAILED:内存数据拷贝、读取、操作失败。|
OH_PixelmapNative_ToSdr()
Image_ErrorCode OH_PixelmapNative_ToSdr(OH_PixelmapNative *pixelmap)
描述
将HDR的图像内容转换为SDR的图像内容。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNSUPPORTED_OPERATION:操作不支持。|
OH_PixelmapNative_GetImageInfo()
Image_ErrorCode OH_PixelmapNative_GetImageInfo(OH_PixelmapNative *pixelmap, OH_Pixelmap_ImageInfo *imageInfo)
描述
获取图像像素信息。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |OH_Pixelmap_ImageInfo *imageInfo|图像像素信息。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_Opacity()
Image_ErrorCode OH_PixelmapNative_Opacity(OH_PixelmapNative *pixelmap, float rate)
描述
通过设置透明比率来让PixelMap达到对应的透明效果。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |float rate|透明比率的值。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_Scale()
Image_ErrorCode OH_PixelmapNative_Scale(OH_PixelmapNative *pixelmap, float scaleX, float scaleY)
描述
根据输入的宽高对图片进行缩放。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |float scaleX|宽度的缩放比例。| |float scaleY|高度的缩放比例。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_ScaleWithAntiAliasing()
Image_ErrorCode OH_PixelmapNative_ScaleWithAntiAliasing(OH_PixelmapNative *pixelmap, float scaleX, float scaleY,OH_PixelmapNative_AntiAliasingLevel level)
描述
根据指定的缩放算法和输入的宽高对图片进行缩放。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |float scaleX|宽度的缩放比例。| |float scaleY|高度的缩放比例。| |OH_PixelmapNative_AntiAliasingLevel level|缩放算法。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_TOO_LARGE:图片过大。
IMAGE_ALLOC_FAILED:内存申请失败。
IMAGE_UNKNOWN_ERROR:pixelmap已经被释放。|
OH_PixelmapNative_CreateScaledPixelMap()
Image_ErrorCode OH_PixelmapNative_CreateScaledPixelMap(OH_PixelmapNative *srcPixelmap, OH_PixelmapNative **dstPixelmap,float scaleX, float scaleY)
描述
根据输入的宽高的缩放比例,创建一个新的缩放后的图片。
起始版本: 16
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *srcPixelmap|被操作的OH_PixelmapNative指针,源pixelmap对象指针。| |OH_PixelmapNative **dstPixelmap|被操作的OH_PixelmapNative指针,目标pixelmap对象指针。| |float scaleX|宽度的缩放比例。| |float scaleY|高度的缩放比例。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_CreateScaledPixelMapWithAntiAliasing()
Image_ErrorCode OH_PixelmapNative_CreateScaledPixelMapWithAntiAliasing(OH_PixelmapNative *srcPixelmap,OH_PixelmapNative **dstPixelmap, float scaleX, float scaleY, OH_PixelmapNative_AntiAliasingLevel level)
描述
根据指定的缩放算法和输入的宽高的缩放比例,创建一个新的缩放后的图片。
起始版本: 16
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *srcPixelmap|被操作的OH_PixelmapNative指针,源pixelmap对象指针。| |OH_PixelmapNative **dstPixelmap|被操作的OH_PixelmapNative指针,目标pixelmap对象指针。| |float scaleX|宽度的缩放比例。| |float scaleY|高度的缩放比例。| |OH_PixelmapNative_AntiAliasingLevel level|缩放算法。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_TOO_LARGE:图片过大。
IMAGE_ALLOC_FAILED:内存申请失败。|
OH_PixelmapNative_Translate()
Image_ErrorCode OH_PixelmapNative_Translate(OH_PixelmapNative *pixelmap, float x, float y)
描述
根据输入的坐标对图片进行位置变换。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |float x|区域横坐标。| |float y|区域纵坐标。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_Rotate()
Image_ErrorCode OH_PixelmapNative_Rotate(OH_PixelmapNative *pixelmap, float angle)
描述
根据输入的角度对图片进行旋转。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |float angle|图片旋转的角度,单位为deg。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_Flip()
Image_ErrorCode OH_PixelmapNative_Flip(OH_PixelmapNative *pixelmap, bool shouldFilpHorizontally, bool shouldFilpVertically)
描述
根据输入的条件对图片进行翻转。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |bool shouldFilpHorizontally|是否水平翻转图像。| |bool shouldFilpVertically|是否垂直翻转图像。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_Crop()
Image_ErrorCode OH_PixelmapNative_Crop(OH_PixelmapNative *pixelmap, Image_Region *region)
描述
根据输入的尺寸对图片进行裁剪。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |Image_Region *region|裁剪的尺寸。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_Release()
Image_ErrorCode OH_PixelmapNative_Release(OH_PixelmapNative *pixelmap)
描述
释放OH_PixelmapNative指针,推荐使用OH_PixelmapNative_Destroy。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被释放的OH_PixelmapNative指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_Destroy()
Image_ErrorCode OH_PixelmapNative_Destroy(OH_PixelmapNative **pixelmap)
描述
释放OH_PixelmapNative指针。
起始版本: 18
参数:
|参数项|描述| |–|–| |OH_PixelmapNative **pixelmap|被释放的OH_PixelmapNative指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_ConvertAlphaFormat()
Image_ErrorCode OH_PixelmapNative_ConvertAlphaFormat(OH_PixelmapNative* srcpixelmap,OH_PixelmapNative* dstpixelmap, const bool isPremul)
描述
将pixelmap的像素数据做预乘和非预乘之间的转换。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative* srcpixelmap|被操作的OH_PixelmapNative指针,源pixelmap对象指针。| |OH_PixelmapNative* dstpixelmap|被操作的OH_PixelmapNative指针,目标pixelmap对象指针。| |const bool isPremul|转换方式,true为非预乘转预乘,false为预乘转非预乘。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_CreateEmptyPixelmap()
Image_ErrorCode OH_PixelmapNative_CreateEmptyPixelmap(OH_Pixelmap_InitializationOptions *options,OH_PixelmapNative **pixelmap)
描述
利用OH_Pixelmap_InitializationOptions创建空的pixelmap对象,内存数据为0。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|创建像素的属性。| |OH_PixelmapNative **pixelmap|被创建的OH_PixelmapNative对象指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_CreateEmptyPixelmapUsingAllocator()
Image_ErrorCode OH_PixelmapNative_CreateEmptyPixelmapUsingAllocator(OH_Pixelmap_InitializationOptions *options, IMAGE_ALLOCATOR_MODE allocator, OH_PixelmapNative **pixelmap)
描述
根据入参options创建空的pixelmap,pixelmap使用的内存类型可以通过allocator指定。默认情况下,系统会根据图像类型、图像大小、平台能力等选择内存类型。在处理此接口返回的像素图时,需要考虑步长影响。
起始版本: 20
参数:
|参数项|描述| |–|–| |OH_Pixelmap_InitializationOptions *options|创建pixelmap的选项。| |IMAGE_ALLOCATOR_MODE allocator|决定pixelmap内存分配的类型。| |OH_PixelmapNative **pixelmap|被创建的OH_PixelmapNative对象指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_UNSUPPORTED_OPERATION:操作不支持。
IMAGE_TOO_LARGE:图像过大,无法分配内存。
IMAGE_DMA_OPERATION_FAILED:DMA内存操作失败。
IMAGE_ALLOCATOR_MODE_UNSUPPORTED:不支持分配当前内存类型。例如,使用共享内存创建HDR图。|
OH_PixelmapNative_GetNativeBuffer()
Image_ErrorCode OH_PixelmapNative_GetNativeBuffer(OH_PixelmapNative *pixelmap, OH_NativeBuffer **nativeBuffer)
描述
从DMA内存的PixelMap中,获取NativeBuffer对象。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|要获取NativeBuffer的源PixelMap。| |OH_NativeBuffer **nativeBuffer|被创建的NativeBuffer对象指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_DMA_NOT_EXIST:不是DMA内存。
IMAGE_DMA_OPERATION_FAILED:DMA内存操作失败。|
OH_PixelmapNative_GetMetadata()
Image_ErrorCode OH_PixelmapNative_GetMetadata(OH_PixelmapNative *pixelmap, OH_Pixelmap_HdrMetadataKey key,OH_Pixelmap_HdrMetadataValue **value)
描述
获取元数据。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |OH_Pixelmap_HdrMetadataKey key|元数据的关键字。| |OH_Pixelmap_HdrMetadataValue **value|元数据的值。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_DMA_NOT_EXIST:不存在DMA内存。
IMAGE_COPY_FAILED:如果内存拷贝失败。|
OH_PixelmapNative_SetMetadata()
Image_ErrorCode OH_PixelmapNative_SetMetadata(OH_PixelmapNative *pixelmap, OH_Pixelmap_HdrMetadataKey key,OH_Pixelmap_HdrMetadataValue *value)
描述
设置元数据。
起始版本: 12
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |OH_Pixelmap_HdrMetadataKey key|元数据的关键字。| |OH_Pixelmap_HdrMetadataValue *value|元数据的值。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。
IMAGE_DMA_NOT_EXIST:不存在DMA内存。
IMAGE_COPY_FAILED:如果内存拷贝失败。|
OH_PixelmapNative_SetColorSpaceNative()
Image_ErrorCode OH_PixelmapNative_SetColorSpaceNative(OH_PixelmapNative *pixelmap,OH_NativeColorSpaceManager *colorSpaceNative)
描述
设置NativeColorSpaceManager对象。
起始版本: 13
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|要设置NativeColorSpaceManager的目标PixelMap。| |OH_NativeColorSpaceManager *colorSpaceNative|要设置的NativeColorSpaceManager对象。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_GetColorSpaceNative()
Image_ErrorCode OH_PixelmapNative_GetColorSpaceNative(OH_PixelmapNative *pixelmap,OH_NativeColorSpaceManager **colorSpaceNative)
描述
获取NativeColorSpaceManager对象。
起始版本: 13
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|获取到NativeColorSpaceManager的源PixelMap。| |OH_NativeColorSpaceManager **colorSpaceNative|获取到的NativeColorSpaceManager对象。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:参数错误。|
OH_PixelmapNative_SetMemoryName()
Image_ErrorCode OH_PixelmapNative_SetMemoryName(OH_PixelmapNative *pixelmap, char *name, size_t *size)
描述
设置pixelMap内存名字。
起始版本: 13
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的OH_PixelmapNative指针。| |char *name|需要被设置的PixelMap内存名称。| |size_t *size|需要被设置的PixelMap内存名称的字节大小。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:名字长度超出31位或者小于1位。
IMAGE_UNSUPPORTED_MEMORY_FORMAT:既不是DMA内存也不是ASHMEM内存。|
OH_PixelmapNative_GetByteCount()
Image_ErrorCode OH_PixelmapNative_GetByteCount(OH_PixelmapNative *pixelmap, uint32_t *byteCount)
描述
获取Pixelmap中所有像素所占用的总字节数,不包含内存填充。
起始版本: 16
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的Pixelmap指针。| |uint32_t *byteCount|获取的总字节数。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:pixelmap或byteCount参数无效。|
OH_PixelmapNative_GetAllocationByteCount()
Image_ErrorCode OH_PixelmapNative_GetAllocationByteCount(OH_PixelmapNative *pixelmap, uint32_t *allocationByteCount)
描述
获取Pixelmap用于储存像素数据的内存字节数。
起始版本: 16
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的Pixelmap指针。| |uint32_t *allocationByteCount|获取的内存字节数。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:pixelmap或allocationByteCount参数无效。|
OH_PixelmapNative_AccessPixels()
Image_ErrorCode OH_PixelmapNative_AccessPixels(OH_PixelmapNative *pixelmap, void **addr)
描述
获取Pixelmap像素数据的内存地址,并锁定这块内存。
当该内存被锁定时,任何修改或释放该Pixelmap的像素数据的操作均会失败或无效。
起始版本: 15
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的Pixelmap指针。| |void **addr|Pixelmap内存地址的双指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:pixelmap或addr参数无效。
IMAGE_LOCK_UNLOCK_FAILED:内存锁定失败。|
OH_PixelmapNative_UnaccessPixels()
Image_ErrorCode OH_PixelmapNative_UnaccessPixels(OH_PixelmapNative *pixelmap)
描述
释放Pixelmap像素数据的内存锁。
该函数需要与OH_PixelmapNative_AccessPixels匹配使用。
起始版本: 15
参数:
|参数项|描述| |–|–| |OH_PixelmapNative *pixelmap|被操作的Pixelmap指针。|
返回:
|类型|说明|
|–|–|
|Image_ErrorCode|IMAGE_SUCCESS:执行成功。
IMAGE_BAD_PARAMETER:pixelmap参数无效。
IMAGE_LOCK_UNLOCK_FAILED:内存解锁失败。|
你可能感兴趣的鸿蒙文章
harmony 鸿蒙Interface (AuxiliaryPicture)
harmony 鸿蒙Interface (ImageCreator)
harmony 鸿蒙Interface (ImagePacker)
harmony 鸿蒙Interface (ImageReceiver)
harmony 鸿蒙Interface (ImageSource)
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦