HarmonyOS API:头文件

joytrian
发布于 2023-4-14 16:53
浏览
0收藏

版本:v3.1 Beta

drawing_types.h

更新时间: 2023-02-17 09:19

概述

文件中定义了用于绘制2d图形的数据类型,包括画布、画笔、画刷、位图和路径。


起始版本:


8


相关模块:


​Drawing​

汇总

类型定义

类型定义名称

描述

​OH_Drawing_Canvas​

OH_Drawing_Canvas定义为一块矩形的画布,可以结合画笔和画刷在上面绘制各种形状、图片和文字

​OH_Drawing_Pen​

OH_Drawing_Pen定义为画笔,画笔用于描述绘制图形轮廓的样式和颜色

​OH_Drawing_Brush​

OH_Drawing_Brush定义为画刷,画刷用于描述填充图形的样式和颜色

​OH_Drawing_Path​

OH_Drawing_Path定义为路径,路径用于自定义各种形状

​OH_Drawing_Bitmap​

OH_Drawing_Bitmap定义为位图,位图是一块内存,内存中包含了描述一张图片的像素数据

枚举

枚举名称

描述

​OH_Drawing_ColorFormat​​ { COLOR_FORMAT_UNKNOWN, COLOR_FORMAT_ALPHA_8, COLOR_FORMAT_RGB_565, COLOR_FORMAT_ARGB_4444, COLOR_FORMAT_RGBA_8888, COLOR_FORMAT_BGRA_8888 }

OH_Drawing_ColorFormat用于描述位图像素的存储格式

​OH_Drawing_AlphaFormat​​ { ALPHA_FORMAT_UNKNOWN, ALPHA_FORMAT_OPAQUE, ALPHA_FORMAT_PREMUL, ALPHA_FORMAT_UNPREMUL }

OH_Drawing_AlphaFormat用于描述位图像素的透明度分量

external_window.h

更新时间: 2023-02-17 09:19

概述

定义获取和使用NativeWindow的相关函数。


起始版本:


8


相关模块:


​NativeWindow​

汇总

结构体

结构体名称

描述

​Region​

表示本地窗口NativeWindow需要更新内容的矩形区域(脏区)。

​Region::Rect​

矩形区域。

​OHHDRMetaData​

HDR元数据结构体定义 。

​OHExtDataHandle​

扩展数据句柄结构体定义 。

类型定义

类型定义名称

描述

OHNativeWindow

提供对NativeWindow的访问功能

OHNativeWindowBuffer

提供对NativeWindowBuffer的访问功能

​Region​

表示本地窗口NativeWindow需要更新内容的矩形区域(脏区)

枚举

枚举名称

描述

​NativeWindowOperation​​ { SET_BUFFER_GEOMETRY, GET_BUFFER_GEOMETRY, GET_FORMAT, SET_FORMAT, GET_USAGE, SET_USAGE, SET_STRIDE, GET_STRIDE, SET_SWAP_INTERVAL, GET_SWAP_INTERVAL, SET_TIMEOUT, GET_TIMEOUT, SET_COLOR_GAMUT, GET_COLOR_GAMUT, SET_TRANSFORM, GET_TRANSFORM, SET_UI_TIMESTAMP }

OH_NativeWindow_NativeWindowHandleOpt函数中的操作码

​OHScalingMode​​ { OH_SCALING_MODE_FREEZE = 0, OH_SCALING_MODE_SCALE_TO_WINDOW, OH_SCALING_MODE_SCALE_CROP, OH_SCALING_MODE_NO_SCALE_CROP }

缩放模式 Scaling Mode

​OHHDRMetadataKey​​ { OH_METAKEY_RED_PRIMARY_X = 0, OH_METAKEY_RED_PRIMARY_Y = 1, OH_METAKEY_GREEN_PRIMARY_X = 2, OH_METAKEY_GREEN_PRIMARY_Y = 3, OH_METAKEY_BLUE_PRIMARY_X = 4, OH_METAKEY_BLUE_PRIMARY_Y = 5, OH_METAKEY_WHITE_PRIMARY_X = 6, OH_METAKEY_WHITE_PRIMARY_Y = 7, OH_METAKEY_MAX_LUMINANCE = 8, OH_METAKEY_MIN_LUMINANCE = 9, OH_METAKEY_MAX_CONTENT_LIGHT_LEVEL = 10, OH_METAKEY_MAX_FRAME_AVERAGE_LIGHT_LEVEL = 11, OH_METAKEY_HDR10_PLUS = 12, OH_METAKEY_HDR_VIVID = 13 }

枚举HDR元数据关键字

函数

函数名称

描述

​OH_NativeWindow_CreateNativeWindow​​ (void *pSurface)

创建NativeWindow实例,每次调用都会产生一个新的NativeWindow实例

​OH_NativeWindow_DestroyNativeWindow​​ (OHNativeWindow *window)

将NativeWindow对象的引用计数减1,当引用计数为0的时候,该NativeWindow对象会被析构掉

​OH_NativeWindow_CreateNativeWindowBufferFromSurfaceBuffer​​ (void *pSurfaceBuffer)

创建NativeWindowBuffer实例,每次调用都会产生一个新的NativeWindowBuffer实例

​OH_NativeWindow_DestroyNativeWindowBuffer​​ (OHNativeWindowBuffer *buffer)

将NativeWindowBuffer对象的引用计数减1,当引用计数为0的时候,该NativeWindowBuffer对象会被析构掉

​OH_NativeWindow_NativeWindowRequestBuffer​​ (OHNativeWindow *window, OHNativeWindowBuffer **buffer, int *fenceFd)

通过NativeWindow对象申请一块NativeWindowBuffer,用以内容生产

​OH_NativeWindow_NativeWindowFlushBuffer​​​ (OHNativeWindow *window, OHNativeWindowBuffer *buffer, int fenceFd, ​​Region​​ region)

通过NativeWindow将生产好内容的NativeWindowBuffer放回到Buffer队列中,用以内容消费

​OH_NativeWindow_NativeWindowAbortBuffer​​ (OHNativeWindow *window, OHNativeWindowBuffer *buffer)

通过NativeWindow将之前申请出来的NativeWindowBuffer返还到Buffer队列中,供下次再申请

​OH_NativeWindow_NativeWindowHandleOpt​​ (OHNativeWindow *window, int code,...)

设置/获取NativeWindow的属性,包括设置/获取宽高、内容格式等

​OH_NativeWindow_GetBufferHandleFromNative​​ (OHNativeWindowBuffer *buffer)

通过NativeWindowBuffer获取该buffer的BufferHandle指针

​OH_NativeWindow_NativeObjectReference​​ (void *obj)

增加一个NativeObject的引用计数

​OH_NativeWindow_NativeObjectUnreference​​ (void *obj)

减少一个NativeObject的引用计数,当引用计数减少为0时,该NativeObject将被析构掉

​OH_NativeWindow_GetNativeObjectMagic​​ (void *obj)

获取NativeObject的MagicId

​OH_NativeWindow_NativeWindowSetScalingMode​​​ (OHNativeWindow *window, uint32_t sequence, ​​OHScalingMode​​ scalingMode)

设置NativeWindow的ScalingMode

​OH_NativeWindow_NativeWindowSetMetaData​​​ (OHNativeWindow *window, uint32_t sequence, int32_t size, const ​​OHHDRMetaData​​ *metaData)

设置NativeWindow的元数据

​OH_NativeWindow_NativeWindowSetMetaDataSet​​​ (OHNativeWindow *window, uint32_t sequence, ​​OHHDRMetadataKey​​ key, int32_t size, const uint8_t *metaData)

设置NativeWindow的元数据集。

​OH_NativeWindow_NativeWindowSetTunnelHandle​​​ (OHNativeWindow *window, const ​​OHExtDataHandle​​ *handle)

设置NativeWindow的TunnelHandle。

image_pixel_map_napi.h

更新时间: 2023-02-17 09:19

概述

声明可以锁定并访问pixelmap数据的方法,声明解锁的方法。


起始版本:


8


相关模块:


​Image​

汇总

结构体

结构体名称

描述

​OhosPixelMapInfo​

用于定义 pixel map 的相关信息。

枚举

枚举名称

描述

{ 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 格式的枚举。

函数

函数名称

描述

​OH_GetImageInfo​​​ (napi_env env, napi_value value, ​​OhosPixelMapInfo​​ *info)

获取 PixelMap 的信息,并记录信息到​​OhosPixelMapInfo​​结构中。

​OH_AccessPixels​​ (napi_env env, napi_value value, void **addrPtr)

获取PixelMap对象数据的内存地址,并锁定该内存。

​OH_UnAccessPixels​​ (napi_env env, napi_value value)

释放PixelMap对象数据的内存锁, 用于匹配方法​​OH_AccessPixels​​。


文章转载自:​​https://developer.harmonyos.com/cn/docs/documentation/doc-references-V3/image__pixel__map__napi_8h-0000001447130408-V3?catalogVersion=V3​

已于2023-4-14 16:53:36修改
收藏
回复
举报
回复