Drawing

概述

Drawing模块提供包括2D图形渲染、文字绘制和图片显示等功能函数。

本模块采用屏幕物理像素单位px。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

汇总

文件

名称 描述
drawing_bitmap.h 文件中定义了与位图相关的功能函数。
drawing_brush.h 文件中定义了与画刷相关的功能函数。
drawing_canvas.h 文件中定义了与画布相关的功能函数。
drawing_color.h 文件中定义了与颜色相关的功能函数。
drawing_color_filter.h 声明与绘图模块中的颜色滤波器对象相关的函数。
drawing_filter.h 声明与绘图模块中的滤波器对象相关的函数。
drawing_font.h 文件中定义了与字体相关的功能函数。
drawing_font_collection.h 定义绘制模块中与字体集合相关的函数。
drawing_mask_filter.h 声明与绘图模块中的对象相关的函数。
drawing_matrix.h 文件中定义了与矩阵相关的功能函数。
drawing_path.h 文件中定义了与自定义路径相关的功能函数
drawing_pen.h 文件中定义了与画笔相关的功能函数。
drawing_point.h 文件中定义了与坐标点相关的功能函数。
drawing_rect.h 文件中定义了与矩形相关的功能函数。
drawing_register_font.h 定义绘制模块中字体管理器相关的函数。
drawing_round_rect.h 文件中定义了与圆角矩形相关的功能函数。
drawing_shader_effect.h 声明与绘图模块中的着色器对象相关的函数。
drawing_text_blob.h 文件中定义了与文字相关的功能函数。
drawing_text_declaration.h 提供2D绘制文本相关的数据结构声明。
drawing_text_typography.h 定义绘制模块中排版相关的函数。
drawing_typeface.h 文件中定义了与字形相关的功能函数。 不同的平台有自己的默认字形,也可以从ttf文件解析出三方指定字形,如宋体、黑体字形等。
drawing_types.h 文件中定义了用于绘制2D图形的数据类型,包括画布、画笔、画刷、位图和路径。

结构体

名称 描述
OH_Drawing_BitmapFormat 结构体用于描述位图像素的格式,包括颜色类型和透明度类型。
OH_Drawing_RunBuffer 结构体用于描述一块内存,描述文字和位置信息。
OH_Drawing_PlaceholderSpan 用于描述位占位符跨度的结构体。

类型定义

名称 描述
OH_Drawing_FontCollection 用于加载字体。
OH_Drawing_Typography 用于管理排版的布局和显示等。
OH_Drawing_TextStyle 用于管理字体颜色、装饰等。
OH_Drawing_TypographyStyle 用于管理排版风格,如文字方向等。
OH_Drawing_TypographyCreate 用于创建OH_Drawing_Typography
OH_Drawing_TextBox 用于接收文本框的矩形大小、方向和数量大小
OH_Drawing_PositionAndAffinity 用于接收字体的位置和亲和性
OH_Drawing_Range 用于接收字体的起始位置和结束位置
OH_Drawing_Canvas 定义为一块矩形的画布,可以结合画笔和画刷在上面绘制各种形状、图片和文字。
OH_Drawing_Pen 定义为画笔,画笔用于描述绘制图形轮廓的样式和颜色。
OH_Drawing_Brush 定义为画刷,画刷用于描述填充图形的样式和颜色。
OH_Drawing_Path 定义为路径,路径用于自定义各种形状。
OH_Drawing_Bitmap 定义为位图,位图是一块内存,内存中包含了描述一张图片的像素数据。
OH_Drawing_Point 定义一个点,用于描述坐标点。
OH_Drawing_Rect 用于描述矩形。
OH_Drawing_RoundRect 用于描述圆角矩形。
OH_Drawing_Matrix 定义一个矩阵,用于描述坐标变换。
OH_Drawing_ShaderEffect 定义一个着色器,用于描述绘制内容的源颜色。
OH_Drawing_Filter 定义一个滤波器,用于存储颜色滤波器和模板滤波器。
OH_Drawing_MaskFilter 定义模板滤波器,用于在绘制模板前对其进行转换。
OH_Drawing_ColorFilter 定义颜色滤波器,传入一个颜色并返回一个新的颜色。
OH_Drawing_Font 用于描述字体。
OH_Drawing_Typeface 用于描述字形。
OH_Drawing_TextBlob 定义一个文本对象,表示将多个文本组合到一个不可变的容器中。 每个文本行由字形和位置组成。
OH_Drawing_TextBlobBuilder 定义文本构建器,用于构建文本。

枚举

名称 描述
OH_Drawing_CanvasClipOp { DIFFERENCE, INTERSECT } 画布裁剪方式的枚举集合。
OH_Drawing_BlurType { NORMAL, SOLID, OUTER, INNER } 枚举模糊类型。
OH_Drawing_PenLineCapStyle { LINE_FLAT_CAP, LINE_SQUARE_CAP, LINE_ROUND_CAP } 枚举集合定义了画笔笔帽的样式,即画笔在绘制线段时,在线段头尾端点的样式。
OH_Drawing_PenLineJoinStyle { LINE_MITER_JOIN, LINE_ROUND_JOIN, LINE_BEVEL_JOIN } 枚举集合定义了线条转角的样式,即画笔在绘制折线段时,在折线转角处的样式。
OH_Drawing_TileMode { CLAMP, REPEAT, MIRROR, DECAL } 着色器效果平铺模式的枚举。
OH_Drawing_TextDirection { TEXT_DIRECTION_RTL, TEXT_DIRECTION_LTR } 文字方向。
OH_Drawing_TextAlign {
TEXT_ALIGN_LEFT, TEXT_ALIGN_RIGHT, TEXT_ALIGN_CENTER, TEXT_ALIGN_JUSTIFY,
TEXT_ALIGN_START, TEXT_ALIGN_END
}
文字对齐方式。
OH_Drawing_FontWeight {
FONT_WEIGHT_100, FONT_WEIGHT_200, FONT_WEIGHT_300, FONT_WEIGHT_400,
FONT_WEIGHT_500, FONT_WEIGHT_600, FONT_WEIGHT_700, FONT_WEIGHT_800,
FONT_WEIGHT_900
}
字重。
OH_Drawing_TextBaseline {
TEXT_BASELINE_ALPHABETIC, TEXT_BASELINE_IDEOGRAPHIC
}
基线位置。
OH_Drawing_TextDecoration {
TEXT_DECORATION_NONE = 0x0, TEXT_DECORATION_UNDERLINE = 0x1, TEXT_DECORATION_OVERLINE = 0x2, TEXT_DECORATION_LINE_THROUGH = 0x4
}
文本装饰。
OH_Drawing_FontStyle {
FONT_STYLE_NORMAL, FONT_STYLE_ITALIC
}
区分字体是否为斜体。
OH_Drawing_PlaceholderVerticalAlignment {
ALIGNMENT_OFFSET_AT_BASELINE, ALIGNMENT_ABOVE_BASELINE, ALIGNMENT_BELOW_BASELINE, ALIGNMENT_TOP_OF_ROW_BOX,
ALIGNMENT_BOTTOM_OF_ROW_BOX, ALIGNMENT_CENTER_OF_ROW_BOX
}
占位符垂直对齐枚举。
OH_Drawing_TextDecorationStyle {
TEXT_DECORATION_STYLE_SOLID, TEXT_DECORATION_STYLE_DOUBLE, TEXT_DECORATION_STYLE_DOTTED, TEXT_DECORATION_STYLE_DASHED,
TEXT_DECORATION_STYLE_WAVY
}
文本装饰样式枚举。
OH_Drawing_EllipsisModal {
ELLIPSIS_MODAL_HEAD = 0, ELLIPSIS_MODAL_MIDDLE = 1, ELLIPSIS_MODAL_TAIL = 2
}
省略号样式枚举。
OH_Drawing_BreakStrategy {
BREAK_STRATEGY_GREEDY = 0, BREAK_STRATEGY_HIGH_QUALITY = 1, BREAK_STRATEGY_BALANCED = 2
}
文本的中断策略枚举。
OH_Drawing_WordBreakType {
WORD_BREAK_TYPE_NORMAL = 0, WORD_BREAK_TYPE_BREAK_ALL = 1, WORD_BREAK_TYPE_BREAK_WORD = 2
}
单词的断词方式枚举。
OH_Drawing_RectHeightStyle {
RECT_HEIGHT_STYLE_TIGHT, RECT_HEIGHT_STYLE_MAX, RECT_HEIGHT_STYLE_INCLUDELINESPACEMIDDLE, RECT_HEIGHT_STYLE_INCLUDELINESPACETOP,
RECT_HEIGHT_STYLE_INCLUDELINESPACEBOTTOM, RECT_HEIGHT_STYLE_STRUCT
}
矩形框高度样式枚举。
OH_Drawing_RectWidthStyle {
RECT_WIDTH_STYLE_TIGHT, RECT_WIDTH_STYLE_MAX
}
矩形框宽度样式枚举。
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_AlphaFormat {
ALPHA_FORMAT_UNKNOWN, ALPHA_FORMAT_OPAQUE, ALPHA_FORMAT_PREMUL, ALPHA_FORMAT_UNPREMUL
}
用于描述位图像素的透明度分量。
OH_Drawing_BlendMode {
BLEND_MODE_CLEAR, BLEND_MODE_SRC, BLEND_MODE_DST, BLEND_MODE_SRC_OVER,
BLEND_MODE_DST_OVER, BLEND_MODE_SRC_IN, BLEND_MODE_DST_IN, BLEND_MODE_SRC_OUT,
BLEND_MODE_DST_OUT, BLEND_MODE_SRC_ATOP, BLEND_MODE_DST_ATOP, BLEND_MODE_XOR,
BLEND_MODE_PLUS, BLEND_MODE_MODULATE, BLEND_MODE_SCREEN, BLEND_MODE_OVERLAY,
BLEND_MODE_DARKEN, BLEND_MODE_LIGHTEN, BLEND_MODE_COLOR_DODGE, BLEND_MODE_COLOR_BURN,
BLEND_MODE_HARD_LIGHT, BLEND_MODE_SOFT_LIGHT, BLEND_MODE_DIFFERENCE, BLEND_MODE_EXCLUSION,
BLEND_MODE_MULTIPLY, BLEND_MODE_HUE, BLEND_MODE_SATURATION, BLEND_MODE_COLOR,
BLEND_MODE_LUMINOSITY
}
混合模式枚举。混合模式的操作会为两种颜色(源色、目标色)生成一种新的颜色。 这些操作在4个颜色通道(红、绿、蓝、透明度)上是相同的。 对于这些,我们使用透明度通道作为示例,而不是单独命名每个通道。

函数

名称 描述
OH_Drawing_Bitmap * OH_Drawing_BitmapCreate (void) 用于创建一个位图对象。
void OH_Drawing_BitmapDestroy (OH_Drawing_Bitmap *) 用于销毁位图对象并回收该对象占有内存。
void OH_Drawing_BitmapBuild (OH_Drawing_Bitmap *, const uint32_t width, const uint32_t height, const OH_Drawing_BitmapFormat *) 用于初始化位图对象的宽度和高度,并且为该位图设置像素格式。
uint32_t OH_Drawing_BitmapGetWidth (OH_Drawing_Bitmap *) 用于获取指定位图的宽度。
uint32_t OH_Drawing_BitmapGetHeight (OH_Drawing_Bitmap *) 用于获取指定位图的高度。
void * OH_Drawing_BitmapGetPixels (OH_Drawing_Bitmap *) 用于获取指定位图的像素地址,可以通过像素地址获取到位图的像素数据。
OH_Drawing_Brush * OH_Drawing_BrushCreate (void) 用于创建一个画刷对象。
void OH_Drawing_BrushDestroy (OH_Drawing_Brush *) 用于销毁画刷对象并回收该对象占有的内存。
bool OH_Drawing_BrushIsAntiAlias (const OH_Drawing_Brush *) 用于获取画刷是否设置抗锯齿属性,如果为真则说明画刷会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理。
void OH_Drawing_BrushSetAntiAlias (OH_Drawing_Brush *, bool) 用于设置画刷的抗锯齿属性,设置为真则画刷在绘制图形时会对图形的边缘像素进行半透明的模糊处理。
uint32_t OH_Drawing_BrushGetColor (const OH_Drawing_Brush *) 用于获取画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。
void OH_Drawing_BrushSetColor (OH_Drawing_Brush *, uint32_t color) 用于设置画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。
uint8_t OH_Drawing_BrushGetAlpha (const OH_Drawing_Brush *) 获取画刷的透明度值。画刷在填充形状时透明通道会使用该值。
void OH_Drawing_BrushSetAlpha (OH_Drawing_Brush *, uint8_t alpha) 为画刷设置透明度值。画刷在填充形状时透明通道会使用该值。
void OH_Drawing_BrushSetShaderEffect (OH_Drawing_Brush *, OH_Drawing_ShaderEffect *) 为画刷设置着色器效果。
void OH_Drawing_BrushSetFilter (OH_Drawing_Brush *, OH_Drawing_Filter *) 为画刷设置滤波器OH_Drawing_Filter。滤波器是一个容器,可以承载蒙版滤波器和颜色滤波器。
OH_Drawing_Canvas * OH_Drawing_CanvasCreate (void) 用于创建一个画布对象。
void OH_Drawing_CanvasDestroy (OH_Drawing_Canvas *) 用于销毁画布对象并回收该对象占有的内存。
void OH_Drawing_CanvasBind (OH_Drawing_Canvas *, OH_Drawing_Bitmap *) 用于将一个位图对象绑定到画布中,使得画布绘制的内容输出到位图中(即CPU渲染)。
void OH_Drawing_CanvasAttachPen (OH_Drawing_Canvas *, const OH_Drawing_Pen *) 用于设置画笔给画布,画布将会使用设置画笔的样式和颜色去绘制图形形状的轮廓。
void OH_Drawing_CanvasDetachPen (OH_Drawing_Canvas *) 用于去除掉画布中的画笔,使用后画布将不去绘制图形形状的轮廓。
void OH_Drawing_CanvasAttachBrush (OH_Drawing_Canvas *, const OH_Drawing_Brush *) 用于设置画刷给画布,画布将会使用设置的画刷样式和颜色去填充绘制的图形形状。
void OH_Drawing_CanvasDetachBrush (OH_Drawing_Canvas *) 用于去除掉画布中的画刷,使用后画布将不去填充图形形状。
void OH_Drawing_CanvasSave (OH_Drawing_Canvas *) 用于保存当前画布的状态(画布矩阵)到一个栈顶。
void OH_Drawing_CanvasRestore (OH_Drawing_Canvas *) 用于恢复保存在栈顶的画布状态(画布矩阵)。
uint32_t OH_Drawing_CanvasGetSaveCount (OH_Drawing_Canvas *) 用于获取栈中保存的画布状态(画布矩阵)的数量。
void OH_Drawing_CanvasRestoreToCount (OH_Drawing_Canvas *, uint32_t saveCount) 用于恢复到指定数量的画布状态(画布矩阵)。
void OH_Drawing_CanvasDrawLine (OH_Drawing_Canvas *, float x1, float y1, float x2, float y2) 用于画一条直线段。
void OH_Drawing_CanvasDrawPath (OH_Drawing_Canvas *, const OH_Drawing_Path *) 用于画一个自定义路径。
void OH_Drawing_CanvasDrawBitmap (OH_Drawing_Canvas *, const OH_Drawing_Bitmap *, float left, float top) 用于画一个位图,位图又称为点阵图像、像素图或栅格图像,是由像素(图片元素)的单个点组成。
void OH_Drawing_CanvasDrawRect (OH_Drawing_Canvas *, const OH_Drawing_Rect *) 用于画一个矩形。
void OH_Drawing_CanvasDrawCircle (OH_Drawing_Canvas *, const OH_Drawing_Point *, float radius) 用于画一个圆形。
void OH_Drawing_CanvasDrawOval (OH_Drawing_Canvas *, const OH_Drawing_Rect *) 用于画一个椭圆。
void OH_Drawing_CanvasDrawArc (OH_Drawing_Canvas *, const OH_Drawing_Rect *, float startAngle, float sweepAngle) 用于画一个弧。
void OH_Drawing_CanvasDrawRoundRect (OH_Drawing_Canvas *, const OH_Drawing_RoundRect *) 用于画一个圆角矩形。
void OH_Drawing_CanvasDrawTextBlob (OH_Drawing_Canvas *, const OH_Drawing_TextBlob *, float x, float y) 用于画一段文字。
uint32_t OH_Drawing_ColorSetArgb (uint32_t alpha, uint32_t red, uint32_t green, uint32_t blue) 用于将4个变量(分别描述透明度、红色、绿色和蓝色)转化为一个描述颜色的32位(ARGB)变量。
OH_Drawing_ColorFilter * OH_Drawing_ColorFilterCreateBlendMode (uint32_t color, OH_Drawing_BlendMode) 创建具有混合模式的颜色滤波器。
OH_Drawing_ColorFilter * OH_Drawing_ColorFilterCreateCompose (OH_Drawing_ColorFilter *colorFilter1, OH_Drawing_ColorFilter *colorFilter2) 将两个颜色滤波器合成一个新的颜色滤波器。
OH_Drawing_ColorFilter * OH_Drawing_ColorFilterCreateMatrix (const float matrix[20]) 创建具有5x4颜色矩阵的颜色滤波器。
OH_Drawing_ColorFilter * OH_Drawing_ColorFilterCreateLinearToSrgbGamma (void) 创建一个颜色滤波器将SRGB的伽玛曲线应用到RGB颜色通道。
OH_Drawing_ColorFilter * OH_Drawing_ColorFilterCreateSrgbGammaToLinear (void) 创建颜色滤波器将RGB颜色通道应用于SRGB的伽玛曲线。
OH_Drawing_ColorFilter * OH_Drawing_ColorFilterCreateLuma (void) 创建一个颜色滤波器将其输入的亮度值乘以透明度通道, 并将红色、绿色和蓝色通道设置为零。
void OH_Drawing_ColorFilterDestroy (OH_Drawing_ColorFilter *) 销毁颜色滤波器对象,并收回该对象占用的内存。
OH_Drawing_Filter * OH_Drawing_FilterCreate (void) 创建一个滤波器对象。
void OH_Drawing_FilterSetMaskFilter (OH_Drawing_Filter *, OH_Drawing_MaskFilter *) 为滤波器对象设置蒙板滤波器对象。
void OH_Drawing_FilterSetColorFilter (OH_Drawing_Filter *, OH_Drawing_ColorFilter *) 为滤波器对象设置颜色滤波器对象。
void OH_Drawing_FilterDestroy (OH_Drawing_Filter *) 销毁滤波器对象,并收回该对象占用的内存。
OH_Drawing_Font * OH_Drawing_FontCreate (void) 用于创建一个字体对象。
void OH_Drawing_FontSetTypeface (OH_Drawing_Font *, OH_Drawing_Typeface *) 用于给字体设置字形。
void OH_Drawing_FontSetTextSize (OH_Drawing_Font *, float textSize) 用于给字体设置文字大小。
void OH_Drawing_FontSetLinearText (OH_Drawing_Font *, bool isLinearText) 用于设置线性可缩放字体。
void OH_Drawing_FontSetTextSkewX (OH_Drawing_Font *, float skewX) 用于给字体设置文本倾斜。
void OH_Drawing_FontSetFakeBoldText (OH_Drawing_Font *, bool isFakeBoldText) 用于设置增加描边宽度以近似粗体字体效果。
void OH_Drawing_FontDestroy (OH_Drawing_Font *) 用于销毁字体对象并回收该对象占有的内存。
OH_Drawing_FontCollection * OH_Drawing_CreateFontCollection (void) 创建字体集对象OH_Drawing_FontCollection
void OH_Drawing_DestroyFontCollection (OH_Drawing_FontCollection *) 释放被字体集对象占据的内存。
OH_Drawing_MaskFilter * OH_Drawing_MaskFilterCreateBlur (OH_Drawing_BlurType blurType, float sigma, bool respectCTM) 创建具有模糊效果的模板滤波器。
void OH_Drawing_MaskFilterDestroy (OH_Drawing_MaskFilter *) 销毁模板滤波器对象,并收回该对象占用的内存。
OH_Drawing_Matrix * OH_Drawing_MatrixCreate (void) 用于创建一个矩阵对象。
void OH_Drawing_MatrixSetMatrix (OH_Drawing_Matrix *, float scaleX, float skewX, float transX, float skewY, float scaleY, float transY, float persp0, float persp1, float persp2) 用于给矩阵对象设置参数。
void OH_Drawing_MatrixDestroy (OH_Drawing_Matrix *) 用于销毁矩阵对象并回收该对象占有的内存。
OH_Drawing_Path * OH_Drawing_PathCreate (void) 用于创建一个路径对象。
void OH_Drawing_PathDestroy (OH_Drawing_Path *) 用于销毁路径对象并回收该对象占有的内存。
void OH_Drawing_PathMoveTo (OH_Drawing_Path *, float x, float y) 用于设置自定义路径的起始点位置。
void OH_Drawing_PathLineTo (OH_Drawing_Path *, float x, float y) 用于添加一条从路径的最后点位置到目标点位置的线段。
void OH_Drawing_PathArcTo (OH_Drawing_Path *, float x1, float y1, float x2, float y2, float startDeg, float sweepDeg) 用于给路径添加一段弧线,绘制弧线的方式为角度弧,该方式首先会指定一个矩形边框,矩形边框会包裹椭圆, 然后会指定一个起始角度和扫描度数,从起始角度扫描截取的椭圆周长一部分即为绘制的弧线。另外会默认添加一条从路径的最后点位置到弧线起始点位置的线段。
void OH_Drawing_PathQuadTo (OH_Drawing_Path *, float ctrlX, float ctrlY, float endX, float endY) 用于添加一条从路径最后点位置到目标点位置的二阶贝塞尔圆滑曲线。
void OH_Drawing_PathCubicTo (OH_Drawing_Path *, float ctrlX1, float ctrlY1, float ctrlX2, float ctrlY2, float endX, float endY) 用于添加一条从路径最后点位置到目标点位置的三阶贝塞尔圆滑曲线。
void OH_Drawing_PathClose (OH_Drawing_Path *) 用于闭合路径,会添加一条从路径起点位置到最后点位置的线段。
void OH_Drawing_PathReset (OH_Drawing_Path *) 用于重置自定义路径数据。
OH_Drawing_Pen * OH_Drawing_PenCreate (void) 用于创建一个画笔对象。
void OH_Drawing_PenDestroy (OH_Drawing_Pen *) 用于销毁画笔对象并回收该对象占有的内存。
bool OH_Drawing_PenIsAntiAlias (const OH_Drawing_Pen *) 用于获取画笔是否设置抗锯齿属性,如果为真则说明画笔会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理。
void OH_Drawing_PenSetAntiAlias (OH_Drawing_Pen *, bool) 用于设置画笔的抗锯齿属性,设置为真则画笔在绘制图形时会对图形的边缘像素进行半透明的模糊处理。
uint32_t OH_Drawing_PenGetColor (const OH_Drawing_Pen *) 用于获取画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示。
void OH_Drawing_PenSetColor (OH_Drawing_Pen *, uint32_t color) 用于设置画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示。
uint8_t OH_Drawing_PenGetAlpha (const OH_Drawing_Pen *) 获取画笔的透明度值。画笔在勾勒图形时透明通道会使用该值。
void OH_Drawing_PenSetAlpha (OH_Drawing_Pen *, uint8_t alpha) 为画笔设置透明度值。画笔在勾勒图形时透明通道会使用该值。
float OH_Drawing_PenGetWidth (const OH_Drawing_Pen *) 用于获取画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度。
void OH_Drawing_PenSetWidth (OH_Drawing_Pen *, float width) 用于设置画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度。
float OH_Drawing_PenGetMiterLimit (const OH_Drawing_Pen *) 用于获取折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角。
void OH_Drawing_PenSetMiterLimit (OH_Drawing_Pen *, float miter) 用于设置折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角。
OH_Drawing_PenLineCapStyleOH_Drawing_PenGetCap (const OH_Drawing_Pen *) 用于获取画笔笔帽的样式。
void OH_Drawing_PenSetCap (OH_Drawing_Pen *, OH_Drawing_PenLineCapStyle) 用于设置画笔笔帽样式。
OH_Drawing_PenLineJoinStyleOH_Drawing_PenGetJoin (const OH_Drawing_Pen *) 用于获取画笔绘制折线转角的样式。
void OH_Drawing_PenSetJoin (OH_Drawing_Pen *, OH_Drawing_PenLineJoinStyle) 用于设置画笔绘制转角的样式。
void OH_Drawing_PenSetShaderEffect (OH_Drawing_Pen *, OH_Drawing_ShaderEffect *) 设置画笔着色器效果。
void OH_Drawing_PenSetFilter (OH_Drawing_Pen *, OH_Drawing_Filter *) 设置画笔滤波器。
OH_Drawing_Point * OH_Drawing_PointCreate (float x, float y) 用于创建一个坐标点对象。
void OH_Drawing_PointDestroy (OH_Drawing_Point *) 用于销毁坐标点对象并回收该对象占有的内存。
OH_Drawing_Rect * OH_Drawing_RectCreate (float left, float top, float right, float bottom) 用于创建一个矩形对象。
void OH_Drawing_RectDestroy (OH_Drawing_Rect *) 用于销毁矩形对象并回收该对象占有的内存。
OH_Drawing_RoundRect * OH_Drawing_RoundRectCreate (const OH_Drawing_Rect *, float xRad, float yRad) 用于创建一个圆角矩形对象。
uint32_t OH_Drawing_RegisterFont (OH_Drawing_FontCollection *, const char *fontFamily, const char *familySrc) 用于在字体管理器中注册自定义字体。
uint32_t OH_Drawing_RegisterFontBuffer (OH_Drawing_FontCollection *, const char *fontFamily, uint8_t *fontBuffer, size_t length) 用于在字体管理器中注册字体缓冲区。
void OH_Drawing_RoundRectDestroy (OH_Drawing_RoundRect *) 用于销毁圆角矩形对象并回收该对象占有的内存。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateLinearGradient (const OH_Drawing_Point *startPt, const OH_Drawing_Point *endPt, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode) 创建着色器,在两个指定点之间生成线性渐变。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateRadialGradient (const OH_Drawing_Point *centerPt, float radius, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode) 创建着色器,在给定圆心和半径的情况下生成径向渐变。 从起点到终点颜色从内到外进行圆形渐变(从中间向外拉)被称为径向渐变。
OH_Drawing_ShaderEffect * OH_Drawing_ShaderEffectCreateSweepGradient (const OH_Drawing_Point *centerPt, const uint32_t *colors, const float *pos, uint32_t size, OH_Drawing_TileMode) 创建着色器,在给定中心的情况下生成扇形渐变。
void OH_Drawing_ShaderEffectDestroy (OH_Drawing_ShaderEffect *) 销毁着色器对象,并收回该对象占用的内存。
OH_Drawing_TextBlobBuilder * OH_Drawing_TextBlobBuilderCreate (void) 用于创建一个文本构造器对象。
const OH_Drawing_RunBuffer * OH_Drawing_TextBlobBuilderAllocRunPos (OH_Drawing_TextBlobBuilder *, const OH_Drawing_Font *, int32_t count, const OH_Drawing_Rect *) 申请一块内存,用于存储文字和位置信息。返回的指针无需调用者管理, 当调用OH_Drawing_TextBlobBuilderMake后禁止使用。
OH_Drawing_TextBlob * OH_Drawing_TextBlobBuilderMake (OH_Drawing_TextBlobBuilder *) 用于从文本构造器中创建文本对象。
void OH_Drawing_TextBlobDestroy (OH_Drawing_TextBlob *) 用于销毁文本对象并回收该对象占有的内存。
void OH_Drawing_TextBlobBuilderDestroy (OH_Drawing_TextBlobBuilder *) 用于销毁文本构造器对象并回收该对象占有的内存。
OH_Drawing_TypographyStyle * OH_Drawing_CreateTypographyStyle (void) 创建OH_Drawing_TypographyStyle
void OH_Drawing_DestroyTypographyStyle (OH_Drawing_TypographyStyle *) 释放被OH_Drawing_TypographyStyle对象占据的内存。
void OH_Drawing_SetTypographyTextDirection (OH_Drawing_TypographyStyle *, int) 设置文本方向。
void OH_Drawing_SetTypographyTextAlign (OH_Drawing_TypographyStyle *, int) 设置文本对齐方式。
void OH_Drawing_SetTypographyTextMaxLines (OH_Drawing_TypographyStyle *, int) 设置文本最大行数。
OH_Drawing_TextStyle * OH_Drawing_CreateTextStyle (void) 创建OH_Drawing_TextStyle。
void OH_Drawing_DestroyTextStyle (OH_Drawing_TextStyle *) 释放被OH_Drawing_TextStyle对象占据的内存。
void OH_Drawing_SetTextStyleColor (OH_Drawing_TextStyle *, uint32_t) 设置文本颜色。
void OH_Drawing_SetTextStyleFontSize (OH_Drawing_TextStyle *, double) 设置字号。
void OH_Drawing_SetTextStyleFontWeight (OH_Drawing_TextStyle *, int) 设置字重。
void OH_Drawing_SetTextStyleBaseLine (OH_Drawing_TextStyle *, int) 设置字体基线位置。
void OH_Drawing_SetTextStyleDecoration (OH_Drawing_TextStyle *, int) 设置装饰。
void OH_Drawing_SetTextStyleDecorationColor (OH_Drawing_TextStyle *, uint32_t) 设置装饰颜色。
void OH_Drawing_SetTextStyleFontHeight (OH_Drawing_TextStyle *, double) 设置字体高度。
void OH_Drawing_SetTextStyleFontFamilies (OH_Drawing_TextStyle *, int, const char *fontFamilies[]) 设置字体类型。
void OH_Drawing_SetTextStyleFontStyle (OH_Drawing_TextStyle *, int) 设置字体风格。
void OH_Drawing_SetTextStyleLocale (OH_Drawing_TextStyle *, const char *) 设置语言区域。
OH_Drawing_TypographyCreate * OH_Drawing_CreateTypographyHandler (OH_Drawing_TypographyStyle *, OH_Drawing_FontCollection *) 创建指向OH_Drawing_TypographyCreate对象的指针。
void OH_Drawing_DestroyTypographyHandler (OH_Drawing_TypographyCreate *) 释放被OH_Drawing_TypographyCreate对象占据的内存。
void OH_Drawing_TypographyHandlerPushTextStyle (OH_Drawing_TypographyCreate *, OH_Drawing_TextStyle *) 设置排版风格。
void OH_Drawing_TypographyHandlerAddText (OH_Drawing_TypographyCreate *, const char *) 设置文本内容。
void OH_Drawing_TypographyHandlerPopTextStyle (OH_Drawing_TypographyCreate *) 排版弹出。
OH_Drawing_Typography * OH_Drawing_CreateTypography (OH_Drawing_TypographyCreate *) 创建OH_Drawing_Typography。
void OH_Drawing_DestroyTypography (OH_Drawing_Typography *) 释放OH_Drawing_Typography对象占据的内存。
void OH_Drawing_TypographyLayout (OH_Drawing_Typography *, double) 排版布局。
void OH_Drawing_TypographyPaint (OH_Drawing_Typography *, OH_Drawing_Canvas *, double, double) 显示文本。
double OH_Drawing_TypographyGetMaxWidth (OH_Drawing_Typography *) 获取最大宽度。
double OH_Drawing_TypographyGetHeight (OH_Drawing_Typography *) 获取高度。
double OH_Drawing_TypographyGetLongestLine (OH_Drawing_Typography *) 获取最长行。
double OH_Drawing_TypographyGetMinIntrinsicWidth (OH_Drawing_Typography *) 获取最小固有宽度。
double OH_Drawing_TypographyGetMaxIntrinsicWidth (OH_Drawing_Typography *) 获取最大固有宽度。
double OH_Drawing_TypographyGetAlphabeticBaseline (OH_Drawing_Typography *) 获取字母文字基线。
double OH_Drawing_TypographyGetIdeographicBaseline (OH_Drawing_Typography *) 获取表意文字基线。
void OH_Drawing_TypographyHandlerAddPlaceholder (OH_Drawing_TypographyCreate *, OH_Drawing_PlaceholderSpan *) 设置占位符
bool OH_Drawing_TypographyDidExceedMaxLines (OH_Drawing_Typography *) 获取文本是否超过最大行
OH_Drawing_TextBox * OH_Drawing_TypographyGetRectsForRange (OH_Drawing_Typography *, size_t, size_t, OH_Drawing_RectHeightStyle, OH_Drawing_RectWidthStyle) 获取指定范围内的文本框
OH_Drawing_TextBox * OH_Drawing_TypographyGetRectsForPlaceholders (OH_Drawing_Typography *) 获取占位符的文本框
float OH_Drawing_GetLeftFromTextBox (OH_Drawing_TextBox *, int) 获取文本框左侧位置
float OH_Drawing_GetRightFromTextBox (OH_Drawing_TextBox *, int) 获取文本框右侧位置
float OH_Drawing_GetTopFromTextBox (OH_Drawing_TextBox *, int) 获取文本框顶部位置
float OH_Drawing_GetBottomFromTextBox (OH_Drawing_TextBox *, int) 获取文本框底部位置
int OH_Drawing_GetTextDirectionFromTextBox (OH_Drawing_TextBox *, int) 获取文本框方向
size_t OH_Drawing_GetSizeOfTextBox (OH_Drawing_TextBox *) 获取文本框数量大小
OH_Drawing_PositionAndAffinity * OH_Drawing_TypographyGetGlyphPositionAtCoordinate (OH_Drawing_Typography *, double, double) 获取坐标处文本的索引位置和亲和性
OH_Drawing_PositionAndAffinity * OH_Drawing_TypographyGetGlyphPositionAtCoordinateWithCluster (OH_Drawing_Typography *, double, double) 获取坐标处文本所属字符簇的索引位置和亲和性,字符簇指一个或多个字符组成的整体
size_t OH_Drawing_GetPositionFromPositionAndAffinity (OH_Drawing_PositionAndAffinity *) 获取OH_Drawing_PositionAndAffinity对象的位置属性
int OH_Drawing_GetAffinityFromPositionAndAffinity (OH_Drawing_PositionAndAffinity *) 获取OH_Drawing_PositionAndAffinity对象的亲和性,根据亲和性可判断字体会靠近前方文本还是后方文本
OH_Drawing_Range * OH_Drawing_TypographyGetWordBoundary (OH_Drawing_Typography *, size_t) 获取单词的边界
size_t OH_Drawing_GetStartFromRange (OH_Drawing_Range *) 获取OH_Drawing_Range对象开始位置
size_t OH_Drawing_GetEndFromRange (OH_Drawing_Range *) 获取OH_Drawing_Range对象结束位置
size_t OH_Drawing_TypographyGetLineCount (OH_Drawing_Typography *) 获取文本行数
void OH_Drawing_SetTextStyleDecorationStyle (OH_Drawing_TextStyle *, int) 设置文本装饰样式
void OH_Drawing_SetTextStyleDecorationThicknessScale (OH_Drawing_TextStyle *, double) 设置文本装饰线的厚度缩放比例
void OH_Drawing_SetTextStyleLetterSpacing (OH_Drawing_TextStyle *, double) 设置文本的字符间距
void OH_Drawing_SetTextStyleWordSpacing (OH_Drawing_TextStyle *, double) 设置文本的单词间距
void OH_Drawing_SetTextStyleHalfLeading (OH_Drawing_TextStyle *, bool) 设置文本为一半行间距
void OH_Drawing_SetTextStyleEllipsis (OH_Drawing_TextStyle *, const char *) 设置文本的省略号内容
void OH_Drawing_SetTextStyleEllipsisModal (OH_Drawing_TextStyle *, int) 设置文本的省略号样式
void OH_Drawing_SetTypographyTextBreakStrategy (OH_Drawing_TypographyStyle *, int) 设置文本的中断策略
void OH_Drawing_SetTypographyTextWordBreakType (OH_Drawing_TypographyStyle *, int) 设置单词的断词方式
void OH_Drawing_SetTypographyTextEllipsisModal (OH_Drawing_TypographyStyle *, int) 设置文本的省略号样式
double OH_Drawing_TypographyGetLineHeight (OH_Drawing_Typography *, int) 获取指定行的行高
double OH_Drawing_TypographyGetLineWidth (OH_Drawing_Typography *, int) 获取指定行的行宽
OH_Drawing_Typeface * OH_Drawing_TypefaceCreateDefault (void) 用于创建一个默认的字形对象。
void OH_Drawing_TypefaceDestroy (OH_Drawing_Typeface *) 用于销毁字形对象并回收该对象占有的内存。
void OH_Drawing_CanvasClipRect (OH_Drawing_Canvas *, const OH_Drawing_Rect *, OH_Drawing_CanvasClipOp clipOp, bool doAntiAlias) 用于裁剪一个矩形。
void OH_Drawing_CanvasClipPath (OH_Drawing_Canvas *, const OH_Drawing_Path *, OH_Drawing_CanvasClipOp clipOp, bool doAntiAlias) 用于裁剪一个自定义路径。
void OH_Drawing_CanvasRotate (OH_Drawing_Canvas *, float degrees, float px, float py) 用于画布旋转一定的角度,正数表示顺时针旋转,负数反之。
void OH_Drawing_CanvasTranslate (OH_Drawing_Canvas *, float dx, float dy) 用于平移画布一段距离。
void OH_Drawing_CanvasScale (OH_Drawing_Canvas *, float sx, float sy) 用于画布缩放。
void OH_Drawing_CanvasClear (OH_Drawing_Canvas *, uint32_t color) 用于使用指定颜色去清空画布。

类型定义说明

OH_Drawing_Bitmap

typedef struct OH_Drawing_Bitmap OH_Drawing_Bitmap

描述

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

起始版本: 8

OH_Drawing_Brush

typedef struct OH_Drawing_Brush OH_Drawing_Brush

描述

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

起始版本: 8

OH_Drawing_Canvas

typedef struct OH_Drawing_Canvas OH_Drawing_Canvas

描述

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

起始版本: 8

OH_Drawing_ColorFilter

typedef struct OH_Drawing_ColorFilter OH_Drawing_ColorFilter

描述

定义颜色滤波器,传入一个颜色并返回一个新的颜色。

起始版本: 11

OH_Drawing_Filter

typedef struct OH_Drawing_Filter OH_Drawing_Filter

描述

定义一个滤波器,用于存储颜色滤波器和模板滤波器。

起始版本: 11

OH_Drawing_Font

typedef struct OH_Drawing_Font OH_Drawing_Font

描述

用于描述字体。

起始版本: 11

OH_Drawing_FontCollection

typedef struct OH_Drawing_FontCollection OH_Drawing_FontCollection

描述

用于加载字体。

起始版本: 8

OH_Drawing_MaskFilter

typedef struct OH_Drawing_MaskFilter OH_Drawing_MaskFilter

描述

定义模板滤波器,用于在绘制模板前对其进行转换。

起始版本: 11

OH_Drawing_Matrix

typedef struct OH_Drawing_MatrixOH_Drawing_Matrix

描述

定义一个矩阵,用于描述坐标变换。

起始版本: 11

OH_Drawing_Path

typedef struct OH_Drawing_PathOH_Drawing_Path

描述

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

起始版本: 8

OH_Drawing_Pen

typedef struct OH_Drawing_Pen OH_Drawing_Pen

描述

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

起始版本: 8

OH_Drawing_Point

typedef struct OH_Drawing_Point OH_Drawing_Point

描述

定义一个点,用于描述坐标点。

起始版本: 11

OH_Drawing_PositionAndAffinity

typedef struct OH_Drawing_PositionAndAffinity OH_Drawing_PositionAndAffinity

描述

用于接收字体的位置和亲和性

起始版本: 11

OH_Drawing_Range

typedef struct OH_Drawing_Range OH_Drawing_Range

描述

用于接收字体的起始位置和结束位置

起始版本: 11

OH_Drawing_Rect

typedef struct OH_Drawing_Rect OH_Drawing_Rect

描述

用于描述矩形。

起始版本: 11

OH_Drawing_RoundRect

typedef struct OH_Drawing_RoundRect OH_Drawing_RoundRect

描述

用于描述圆角矩形。

起始版本: 11

OH_Drawing_ShaderEffect

typedef struct OH_Drawing_ShaderEffectOH_Drawing_ShaderEffect

描述

定义一个着色器,用于描述绘制内容的源颜色。

起始版本: 11

OH_Drawing_TextBlob

typedef struct OH_Drawing_TextBlobOH_Drawing_TextBlob

描述

定义一个文本对象,表示将多个文本组合到一个不可变的容器中。 每个文本行由字形和位置组成。

起始版本: 11

OH_Drawing_TextBlobBuilder

typedef struct OH_Drawing_TextBlobBuilderOH_Drawing_TextBlobBuilder

描述

定义文本构建器,用于构建文本。

起始版本: 11

OH_Drawing_TextBox

typedef struct OH_Drawing_TextBoxOH_Drawing_TextBox

描述

用于接收文本框的矩形大小、方向和数量大小

起始版本: 11

OH_Drawing_TextStyle

typedef struct OH_Drawing_TextStyleOH_Drawing_TextStyle

描述

用于管理字体颜色、装饰等。

起始版本: 8

OH_Drawing_Typeface

typedef struct OH_Drawing_TypefaceOH_Drawing_Typeface

描述

用于描述字形。

起始版本: 11

OH_Drawing_Typography

typedef struct OH_Drawing_TypographyOH_Drawing_Typography

描述

用于管理排版的布局和显示等。

起始版本: 8

OH_Drawing_TypographyCreate

typedef struct OH_Drawing_TypographyCreateOH_Drawing_TypographyCreate

描述

用于创建OH_Drawing_Typography

起始版本: 8

OH_Drawing_TypographyStyle

typedef struct OH_Drawing_TypographyStyleOH_Drawing_TypographyStyle

描述

用于管理排版风格,如文字方向等。

起始版本: 8

枚举类型说明

OH_Drawing_AlphaFormat

enum OH_Drawing_AlphaFormat

描述

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

起始版本: 8

枚举值 描述
ALPHA_FORMAT_UNKNOWN 未知格式
ALPHA_FORMAT_OPAQUE 位图无透明度
ALPHA_FORMAT_PREMUL 每个像素的颜色组件由透明度分量预先乘以
ALPHA_FORMAT_UNPREMUL 每个像素的颜色组件未由透明度分量预先乘以

OH_Drawing_BlendMode

enum OH_Drawing_BlendMode

描述

混合模式枚举。混合模式的操作会为两种颜色(源色、目标色)生成一种新的颜色。 这些操作在4个颜色通道(红、绿、蓝、透明度)上是相同的。 对于这些,我们使用透明度通道作为示例,而不是单独命名每个通道。

为简洁起见,我们使用以下缩写:

s : source 源的缩写。 d : destination 目标的缩写。 sa : source alpha 源透明度的缩写。 da : destination alpha 目标透明度的缩写。

计算结果用如下缩写表示:

r : 如果4个通道的计算方式相同,用r表示。 ra : 如果只操作透明度通道,用ra表示。 rc : 如果操作3个颜色通道,用rc表示。

起始版本: 11

枚举值 描述
BLEND_MODE_CLEAR 清除模式,r = 0。
BLEND_MODE_SRC r = s(result的4个通道,都等于source的4个通道,即结果等于源。)
BLEND_MODE_DST r = d(result的4个通道,都等于destination的4个通道,即结果等于目标。)
BLEND_MODE_SRC_OVER r = s + (1 - sa) * d
BLEND_MODE_DST_OVER r = d + (1 - da) * s
BLEND_MODE_SRC_IN r = s * da
BLEND_MODE_DST_IN r = d * sa
BLEND_MODE_SRC_OUT r = s * (1 - da)
BLEND_MODE_DST_OUT r = d * (1 - sa)
BLEND_MODE_SRC_ATOP r = s * da + d * (1 - sa)
BLEND_MODE_DST_ATOP r = d * sa + s * (1 - da)
BLEND_MODE_XOR r = s * (1 - da) + d * (1 - sa)
BLEND_MODE_PLUS r = min(s + d, 1)
BLEND_MODE_MODULATE r = s * d
BLEND_MODE_SCREEN 滤色模式,r = s + d - s * d
BLEND_MODE_OVERLAY 叠加模式
BLEND_MODE_DARKEN 变暗模式,rc = s + d - max(s * da, d * sa), ra = s + (1 - sa) * d
BLEND_MODE_LIGHTEN 变亮模式,rc = s + d - min(s * da, d * sa), ra = s + (1 - sa) * d
BLEND_MODE_COLOR_DODGE 颜色减淡模式
BLEND_MODE_COLOR_BURN 颜色加深模式
BLEND_MODE_HARD_LIGHT 强光模式
BLEND_MODE_SOFT_LIGHT 柔光模式
BLEND_MODE_DIFFERENCE 差值模式,rc = s + d - 2 * (min(s * da, d * sa)), ra = s + (1 - sa) * d
BLEND_MODE_EXCLUSION 排除模式,rc = s + d - two(s * d), ra = s + (1 - sa) * d
BLEND_MODE_MULTIPLY 正片叠底,r = s * (1 - da) + d * (1 - sa) + s * d
BLEND_MODE_HUE 色相模式
BLEND_MODE_SATURATION 饱和度模式
BLEND_MODE_COLOR 颜色模式
BLEND_MODE_LUMINOSITY 亮度模式

OH_Drawing_BlurType

enum OH_Drawing_BlurType

描述

枚举模糊类型。

起始版本: 11

枚举值 描述
NORMAL 内外模糊。
SOLID 内部实体,外部模糊。
OUTER 内部空白,外部模糊。
INNER 内部模糊,外部空白。

OH_Drawing_BreakStrategy

enum OH_Drawing_BreakStrategy

描述

文本的中断策略枚举

起始版本: 11

枚举值 描述
BREAK_STRATEGY_GREEDY 贪心策略,换行时尽可能填满每一行
BREAK_STRATEGY_HIGH_QUALITY 高质量策略,换行时优先考虑文本的连续性
BREAK_STRATEGY_BALANCED 平衡策略,换行时在单词边界换行

OH_Drawing_CanvasClipOp

enum OH_Drawing_CanvasClipOp

描述

画布裁剪方式的枚举集合。

起始版本: 11

枚举值 描述
DIFFERENCE 将指定区域裁剪(取差集)。
INTERSECT 将指定区域保留(取交集)。

OH_Drawing_ColorFormat

enum OH_Drawing_ColorFormat

描述

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

起始版本: 8

枚举值 描述
COLOR_FORMAT_UNKNOWN 未知格式.
COLOR_FORMAT_ALPHA_8 每个像素用一个8位的量表示,8个位比特位表示透明度
COLOR_FORMAT_RGB_565 每个像素用一个16位的量表示,高位到低位依次是5个比特位表示红,6个比特位表示绿,5个比特位表示蓝
COLOR_FORMAT_ARGB_4444 每个像素用一个16位的量表示,高位到低位依次是4个比特位表示透明度,4个比特位表示红,4个比特位表示绿,4个比特位表示蓝
COLOR_FORMAT_RGBA_8888 每个像素用一个32位的量表示,高位到低位依次是8个比特位表示透明度,8个比特位表示红,8个比特位表示绿,8个比特位表示蓝
COLOR_FORMAT_BGRA_8888 每个像素用一个32位的量表示,高位到低位依次是8个比特位表示蓝,8个比特位表示绿,8个比特位表示红,8个比特位表示透明度

OH_Drawing_EllipsisModal

enum OH_Drawing_EllipsisModal

描述

省略号样式枚举

起始版本: 11

枚举值 描述
ELLIPSIS_MODAL_HEAD 头部模式,即省略号放在文本头部
ELLIPSIS_MODAL_MIDDLE 中部模式,即省略号放在文本中部
ELLIPSIS_MODAL_TAIL 尾部模式,即省略号放在文本尾部

OH_Drawing_FontStyle

enum OH_Drawing_FontStyle

描述

区分字体是否为斜体

起始版本: 8

枚举值 描述
FONT_STYLE_NORMAL 非斜体
FONT_STYLE_ITALIC 斜体

OH_Drawing_FontWeight

enum OH_Drawing_FontWeight

描述

字重

起始版本: 8

枚举值 描述
FONT_WEIGHT_100 字重为thin
FONT_WEIGHT_200 字重为extra-light
FONT_WEIGHT_300 字重为light
FONT_WEIGHT_400 字重为normal/regular
FONT_WEIGHT_500 字重为medium
FONT_WEIGHT_600 字重为semi-bold
FONT_WEIGHT_700 字重为bold
FONT_WEIGHT_800 字重为extra-bold
FONT_WEIGHT_900 字重为black

OH_Drawing_PenLineCapStyle

enum OH_Drawing_PenLineCapStyle

描述

枚举集合定义了画笔笔帽的样式,即画笔在绘制线段时,在线段头尾端点的样式。

起始版本: 8

枚举值 描述
LINE_FLAT_CAP 没有笔帽样式,线条头尾端点处横切
LINE_SQUARE_CAP 笔帽的样式为方框,线条的头尾端点处多出一个方框,方框宽度和线段一样宽,高度时线段厚度的一半
LINE_ROUND_CAP 笔帽的样式为圆弧,线条的头尾端点处多出一个半圆弧,半圆的直径与线段厚度一致

OH_Drawing_PenLineJoinStyle

enum OH_Drawing_PenLineJoinStyle

描述

枚举集合定义了线条转角的样式,即画笔在绘制折线段时,在折线转角处的样式。

起始版本: 8

枚举值 描述
LINE_MITER_JOIN 转角类型为尖角,如果折线角度比较小,则尖角会很长,需要使用限制值(miter limit)进行限制
LINE_ROUND_JOIN 转角类型为圆头
LINE_BEVEL_JOIN 转角类型为平头

OH_Drawing_PlaceholderVerticalAlignment

enum OH_Drawing_PlaceholderVerticalAlignment

描述

占位符垂直对齐枚举

起始版本: 11

枚举值 描述
ALIGNMENT_OFFSET_AT_BASELINE 偏移于基线对齐
ALIGNMENT_ABOVE_BASELINE 高于基线对齐
ALIGNMENT_BELOW_BASELINE 低于基线对齐
ALIGNMENT_TOP_OF_ROW_BOX 行框顶部对齐
ALIGNMENT_BOTTOM_OF_ROW_BOX 行框底部对齐
ALIGNMENT_CENTER_OF_ROW_BOX 行框中心对齐

OH_Drawing_RectHeightStyle

enum OH_Drawing_RectHeightStyle

描述

矩形框高度样式枚举

起始版本: 11

枚举值 描述
RECT_HEIGHT_STYLE_TIGHT 紧密样式
RECT_HEIGHT_STYLE_MAX 最大样式
RECT_HEIGHT_STYLE_INCLUDELINESPACEMIDDLE 包含行间距中间样式
RECT_HEIGHT_STYLE_INCLUDELINESPACETOP 包含行间距顶部样式
RECT_HEIGHT_STYLE_INCLUDELINESPACEBOTTOM 包含行间距底部样式
RECT_HEIGHT_STYLE_STRUCT 结构样式

OH_Drawing_RectWidthStyle

enum OH_Drawing_RectWidthStyle

描述

矩形框宽度样式枚举

起始版本: 11

枚举值 描述
RECT_WIDTH_STYLE_TIGHT 紧密样式
RECT_WIDTH_STYLE_MAX 最大样式

OH_Drawing_TextAlign

enum OH_Drawing_TextAlign

描述

文字对齐方式

**起始版本:**8

枚举值 描述
TEXT_ALIGN_LEFT 左对齐
TEXT_ALIGN_RIGHT 右对齐
TEXT_ALIGN_CENTER 居中对齐
TEXT_ALIGN_JUSTIFY 两端对齐,即紧靠左和右边缘,中间单词空隙由空格填充,最后一行除外。
TEXT_ALIGN_START 当OH_Drawing_TextDirection是TEXT_DIRECTION_LTR时, TEXT_ALIGN_START和TEXT_ALIGN_LEFT相同; 类似地,当OH_Drawing_TextDirection是TEXT_DIRECTION_RTL时, TEXT_ALIGN_START和TEXT_ALIGN_RIGHT相同。
TEXT_ALIGN_END 当OH_Drawing_TextDirection是TEXT_DIRECTION_LTR时, TEXT_ALIGN_END和TEXT_ALIGN_RIGHT相同; 类似地,当OH_Drawing_TextDirection是TEXT_DIRECTION_RTL时, TEXT_ALIGN_END和TEXT_ALIGN_LEFT相同。

OH_Drawing_TextBaseline

enum OH_Drawing_TextBaseline

描述

基线位置

**起始版本:**8

枚举值 描述
TEXT_BASELINE_ALPHABETIC 用于表音文字,基线在中间偏下的位置
TEXT_BASELINE_IDEOGRAPHIC 用于表意文字,基线位于底部

OH_Drawing_TextDecoration

enum OH_Drawing_TextDecoration

描述

文本装饰

**起始版本:**8

枚举值 描述
TEXT_DECORATION_NONE 无装饰
TEXT_DECORATION_UNDERLINE 下划线
TEXT_DECORATION_OVERLINE 上划线
TEXT_DECORATION_LINE_THROUGH 删除线

OH_Drawing_TextDecorationStyle

enum OH_Drawing_TextDecorationStyle

描述

文本装饰样式枚举

起始版本: 11

枚举值 描述
TEXT_DECORATION_STYLE_SOLID 实心样式
TEXT_DECORATION_STYLE_DOUBLE 双重样式
TEXT_DECORATION_STYLE_DOTTED 圆点样式
TEXT_DECORATION_STYLE_DASHED 虚线样式
TEXT_DECORATION_STYLE_WAVY 波浪样式

OH_Drawing_TextDirection

enum OH_Drawing_TextDirection

描述

文字方向

**起始版本:**8

枚举值 描述
TEXT_DIRECTION_RTL 方向:从右到左
TEXT_DIRECTION_LTR 方向:从左到右

OH_Drawing_TileMode

enum OH_Drawing_TileMode

描述

着色器效果平铺模式的枚举。

起始版本: 11

枚举值 描述
CLAMP 如果着色器效果超出其原始边界,则复制边缘颜色。
REPEAT 在水平和垂直方向上重复着色器效果图像。
MIRROR 水平和垂直重复着色器效果图像,交替镜像。
DECAL 只在原始区域内绘制,其他地方返回透明黑色。

OH_Drawing_WordBreakType

enum OH_Drawing_WordBreakType

描述

单词的断词方式枚举

起始版本: 11

枚举值 描述
WORD_BREAK_TYPE_NORMAL 常规方式
WORD_BREAK_TYPE_BREAK_ALL 全部中断方式
WORD_BREAK_TYPE_BREAK_WORD 单词中断方式

函数说明

OH_Drawing_BitmapBuild()

void OH_Drawing_BitmapBuild (OH_Drawing_Bitmap * , const uint32_t width, const uint32_t height, const OH_Drawing_BitmapFormat *  )

描述

用于初始化位图对象的宽度和高度,并且为该位图设置像素格式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Bitmap 指向位图对象的指针。
width 参数是位图要初始化设置的宽度。
height 参数是位图要初始化设置的高度。
OH_Drawing_BitmapFormat 参数是位图要初始化设置的像素格式,包括像素的颜色类型和透明度类型。

OH_Drawing_BitmapCreate()

OH_Drawing_Bitmap* OH_Drawing_BitmapCreate (void )

描述

用于创建一个位图对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

函数会返回一个指针,指针指向创建的位图对象。

OH_Drawing_BitmapDestroy()

void OH_Drawing_BitmapDestroy (OH_Drawing_Bitmap * )

描述

用于销毁位图对象并回收该对象占有内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Bitmap 指向位图对象的指针。

OH_Drawing_BitmapGetHeight()

uint32_t OH_Drawing_BitmapGetHeight (OH_Drawing_Bitmap * )

描述

用于获取指定位图的高度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Bitmap 指向位图对象的指针。

返回:

函数返回位图的高度。

OH_Drawing_BitmapGetPixels()

void* OH_Drawing_BitmapGetPixels (OH_Drawing_Bitmap * )

描述

用于获取指定位图的像素地址,可以通过像素地址获取到位图的像素数据。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Bitmap 指向位图对象的指针。

返回:

函数返回位图的像素地址。

OH_Drawing_BitmapGetWidth()

uint32_t OH_Drawing_BitmapGetWidth (OH_Drawing_Bitmap * )

描述

用于获取指定位图的宽度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Bitmap 指向位图对象的指针。

返回:

函数返回位图的宽度。

OH_Drawing_BrushCreate()

OH_Drawing_Brush* OH_Drawing_BrushCreate (void )

描述

用于创建一个画刷对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

函数会返回一个指针,指针指向创建的画刷对象。

OH_Drawing_BrushDestroy()

void OH_Drawing_BrushDestroy (OH_Drawing_Brush * )

描述

用于销毁画刷对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。

OH_Drawing_BrushGetAlpha()

uint8_t OH_Drawing_BrushGetAlpha (const OH_Drawing_Brush * )

描述

获取画刷的透明度值。画刷在填充形状时透明通道会使用该值。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Brush 表示指向画刷对象的指针。

返回:

返回一个8位变量,用于表示透明度值。

OH_Drawing_BrushGetColor()

uint32_t OH_Drawing_BrushGetColor (const OH_Drawing_Brush * )

描述

用于获取画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。

返回:

函数返回一个描述颜色的32位(ARGB)变量。

OH_Drawing_BrushIsAntiAlias()

bool OH_Drawing_BrushIsAntiAlias (const OH_Drawing_Brush * )

描述

用于获取画刷是否设置抗锯齿属性,如果为真则说明画刷会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。

返回:

函数返回画刷对象是否设置抗锯齿属性,返回真则设置了抗锯齿,返回假则没有设置抗锯齿。

OH_Drawing_BrushSetAlpha()

void OH_Drawing_BrushSetAlpha (OH_Drawing_Brush * , uint8_t alpha )

描述

为画刷设置透明度值。画刷在填充形状时透明通道会使用该值。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。
alpha 表示要设置的透明度值,是一个8位变量。

OH_Drawing_BrushSetAntiAlias()

void OH_Drawing_BrushSetAntiAlias (OH_Drawing_Brush * , bool  )

描述

用于设置画刷的抗锯齿属性,设置为真则画刷在绘制图形时会对图形的边缘像素进行半透明的模糊处理。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。
bool 参数真为抗锯齿,参数假则不做抗锯齿处理。

OH_Drawing_BrushSetColor()

void OH_Drawing_BrushSetColor (OH_Drawing_Brush * , uint32_t color )

描述

用于设置画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。
color 描述颜色的32位(ARGB)变量。

OH_Drawing_BrushSetFilter()

void OH_Drawing_BrushSetFilter (OH_Drawing_Brush * , OH_Drawing_Filter *  )

描述

为画刷设置滤波器OH_Drawing_Filter。滤波器是一个容器,可以承载蒙版滤波器和颜色滤波器。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。
OH_Drawing_Filter 表示指向滤波器对象的指针,为空表示清空画刷滤波器。

OH_Drawing_BrushSetShaderEffect()

void OH_Drawing_BrushSetShaderEffect (OH_Drawing_Brush * , OH_Drawing_ShaderEffect *  )

描述

为画刷设置着色器效果。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Brush 指向画刷对象的指针。
OH_Drawing_ShaderEffect 表示指向着色器对象的指针。

OH_Drawing_CanvasAttachBrush()

void OH_Drawing_CanvasAttachBrush (OH_Drawing_Canvas * , const OH_Drawing_Brush *  )

描述

用于设置画刷给画布,画布将会使用设置的画刷样式和颜色去填充绘制的图形形状。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Brush 指向画刷对象的指针。

OH_Drawing_CanvasAttachPen()

void OH_Drawing_CanvasAttachPen (OH_Drawing_Canvas * , const OH_Drawing_Pen *  )

描述

用于设置画笔给画布,画布将会使用设置画笔的样式和颜色去绘制图形形状的轮廓。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Pen 指向画笔对象的指针。

OH_Drawing_CanvasBind()

void OH_Drawing_CanvasBind (OH_Drawing_Canvas * , OH_Drawing_Bitmap *  )

描述

用于将一个位图对象绑定到画布中,使得画布绘制的内容输出到位图中(即CPU渲染)。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Bitmap 指向位图对象的指针。

OH_Drawing_CanvasClear()

void OH_Drawing_CanvasClear (OH_Drawing_Canvas * , uint32_t color )

描述

用于使用指定颜色去清空画布。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
color 描述颜色的32位(ARGB)变量。

OH_Drawing_CanvasClipPath()

void OH_Drawing_CanvasClipPath (OH_Drawing_Canvas * , const OH_Drawing_Path * , OH_Drawing_CanvasClipOp clipOp, bool doAntiAlias )

描述

用于裁剪一个自定义路径。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Path 指向路径对象的指针。
clipOp 裁剪方式。支持可选的具体裁剪方式可见link OH_Drawing_CanvasClipOp}枚举。
doAntiAlias 参数真为抗锯齿,参数假则不做抗锯齿处理。

OH_Drawing_CanvasClipRect()

void OH_Drawing_CanvasClipRect (OH_Drawing_Canvas * , const OH_Drawing_Rect * , OH_Drawing_CanvasClipOp clipOp, bool doAntiAlias )

描述

用于裁剪一个矩形。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Rect 指向矩形对象的指针。
clipOp 裁剪方式。支持可选的具体裁剪方式可见link OH_Drawing_CanvasClipOp}枚举。
doAntiAlias 值为true则做抗锯齿处理,反之不做。

OH_Drawing_CanvasCreate()

OH_Drawing_Canvas* OH_Drawing_CanvasCreate (void )

描述

用于创建一个画布对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

函数会返回一个指针,指针指向创建的画布对象。

OH_Drawing_CanvasDestroy()

void OH_Drawing_CanvasDestroy (OH_Drawing_Canvas * )

描述

用于销毁画布对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。

OH_Drawing_CanvasDetachBrush()

void OH_Drawing_CanvasDetachBrush (OH_Drawing_Canvas * )

描述

用于去除掉画布中的画刷,使用后画布将不去填充图形形状。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。

OH_Drawing_CanvasDetachPen()

void OH_Drawing_CanvasDetachPen (OH_Drawing_Canvas * )

描述

用于去除掉画布中的画笔,使用后画布将不去绘制图形形状的轮廓。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。

OH_Drawing_CanvasDrawArc()

void OH_Drawing_CanvasDrawArc (OH_Drawing_Canvas * , const OH_Drawing_Rect * , float startAngle, float sweepAngle )

描述

用于画一个弧。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Rect 指向矩形对象的指针。
startAngle 弧的起始角度。
sweepAngle 弧的扫描角度。

OH_Drawing_CanvasDrawBitmap()

void OH_Drawing_CanvasDrawBitmap (OH_Drawing_Canvas * , const OH_Drawing_Bitmap * , float left, float top )

描述

用于画一个位图,位图又称为点阵图像、像素图或栅格图像,是由像素(图片元素)的单个点组成。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Bitmap 指向位图对象的指针。
left 位图对象左上角的横坐标。
top 位图对象左上角的纵坐标。

OH_Drawing_CanvasDrawCircle()

void OH_Drawing_CanvasDrawCircle (OH_Drawing_Canvas * , const OH_Drawing_Point * , float radius )

描述

用于画一个圆形。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Point 指向坐标点对象的指针,表示圆心。
radius 圆形的半径。

OH_Drawing_CanvasDrawLine()

void OH_Drawing_CanvasDrawLine (OH_Drawing_Canvas * , float x1, float y1, float x2, float y2 )

描述

用于画一条直线段。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
x1 线段起始点的横坐标。
y1 线段起始点的纵坐标。
x2 线段结束点的横坐标。
y2 线段结束点的纵坐标。

OH_Drawing_CanvasDrawOval()

void OH_Drawing_CanvasDrawOval (OH_Drawing_Canvas * , const OH_Drawing_Rect *  )

描述

用于画一个椭圆。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Rect 指向矩形对象的指针。

OH_Drawing_CanvasDrawPath()

void OH_Drawing_CanvasDrawPath (OH_Drawing_Canvas * , const OH_Drawing_Path *  )

描述

用于画一个自定义路径。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Path 指向路径对象的指针。

OH_Drawing_CanvasDrawRect()

void OH_Drawing_CanvasDrawRect (OH_Drawing_Canvas * , const OH_Drawing_Rect *  )

描述

用于画一个矩形。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_Rect 指向矩形对象的指针。

OH_Drawing_CanvasDrawRoundRect()

void OH_Drawing_CanvasDrawRoundRect (OH_Drawing_Canvas * , const OH_Drawing_RoundRect *  )

描述

用于画一个圆角矩形。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_RoundRect 指向圆角矩形对象的指针。

OH_Drawing_CanvasDrawTextBlob()

void OH_Drawing_CanvasDrawTextBlob (OH_Drawing_Canvas * , const OH_Drawing_TextBlob * , float x, float y )

描述

用于画一段文字。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
OH_Drawing_TextBlob 指向文本对象的指针。
x 文本对象左下角的横坐标。
y 文本对象左下角的纵坐标。

OH_Drawing_CanvasGetSaveCount()

uint32_t OH_Drawing_CanvasGetSaveCount (OH_Drawing_Canvas * )

描述

用于获取栈中保存的画布状态(画布矩阵)的数量。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。

返回:

函数会返回一个32位的值描述画布状态(画布矩阵)的数量。

OH_Drawing_CanvasRestore()

void OH_Drawing_CanvasRestore (OH_Drawing_Canvas * )

描述

用于恢复保存在栈顶的画布状态(画布矩阵)。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。

OH_Drawing_CanvasRestoreToCount()

void OH_Drawing_CanvasRestoreToCount (OH_Drawing_Canvas * , uint32_t saveCount )

描述

用于恢复到指定数量的画布状态(画布矩阵)。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
saveCount 指定的画布状态(画布矩阵)数量。

OH_Drawing_CanvasRotate()

void OH_Drawing_CanvasRotate (OH_Drawing_Canvas * , float degrees, float px, float py )

描述

用于画布旋转一定的角度,正数表示顺时针旋转,负数反之。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
degrees 旋转角度。
px 旋转中心的横坐标。
py 旋转中心的纵坐标。

OH_Drawing_CanvasSave()

void OH_Drawing_CanvasSave (OH_Drawing_Canvas * )

描述

用于保存当前画布的状态(画布矩阵)到一个栈顶。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。

OH_Drawing_CanvasScale()

void OH_Drawing_CanvasScale (OH_Drawing_Canvas * , float sx, float sy )

描述

用于画布缩放。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
sx 水平方向缩放的比例。
sy 垂直方向缩放的比例。

OH_Drawing_CanvasTranslate()

void OH_Drawing_CanvasTranslate (OH_Drawing_Canvas * , float dx, float dy )

描述

用于平移画布一段距离。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Canvas 指向画布对象的指针。
dx 水平方向移动的距离。
dy 垂直方向移动的距离。

OH_Drawing_ColorFilterCreateBlendMode()

OH_Drawing_ColorFilter* OH_Drawing_ColorFilterCreateBlendMode (uint32_t color, OH_Drawing_BlendMode  )

描述

创建具有混合模式的颜色滤波器。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
color 表示颜色,是一个32位(ARGB)变量。
OH_Drawing_BlendMode 表示混合模式。支持可选的混合模式具体可见OH_Drawing_BlendMode枚举。

返回:

返回创建的颜色滤波器对象的指针。

OH_Drawing_ColorFilterCreateCompose()

OH_Drawing_ColorFilter* OH_Drawing_ColorFilterCreateCompose (OH_Drawing_ColorFilter * colorFilter1, OH_Drawing_ColorFilter * colorFilter2 )

描述

将两个颜色滤波器合成一个新的颜色滤波器。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_ColorFilter 指向颜色滤波器对象一的指针。
OH_Drawing_ColorFilter 指向颜色滤波器对象二的指针。

返回:

返回创建的颜色滤波器对象的指针。

OH_Drawing_ColorFilterCreateLinearToSrgbGamma()

OH_Drawing_ColorFilter* OH_Drawing_ColorFilterCreateLinearToSrgbGamma (void )

描述

创建一个颜色滤波器将SRGB的伽玛曲线应用到RGB颜色通道。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

返回创建的颜色滤波器对象的指针。

OH_Drawing_ColorFilterCreateLuma()

OH_Drawing_ColorFilter* OH_Drawing_ColorFilterCreateLuma (void )

描述

创建一个颜色滤波器将其输入的亮度值乘以透明度通道, 并将红色、绿色和蓝色通道设置为零。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

返回创建的颜色滤波器对象的指针。

OH_Drawing_ColorFilterCreateMatrix()

OH_Drawing_ColorFilter* OH_Drawing_ColorFilterCreateMatrix (const float matrix[20])

描述

创建具有5x4颜色矩阵的颜色滤波器。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
matrix 表示矩阵,以长度为20的浮点数组表示。

返回:

返回创建的颜色滤波器对象的指针。

OH_Drawing_ColorFilterCreateSrgbGammaToLinear()

OH_Drawing_ColorFilter* OH_Drawing_ColorFilterCreateSrgbGammaToLinear (void )

描述

创建颜色滤波器将RGB颜色通道应用于SRGB的伽玛曲线。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

返回创建的颜色滤波器对象的指针。

OH_Drawing_ColorFilterDestroy()

void OH_Drawing_ColorFilterDestroy (OH_Drawing_ColorFilter * )

描述

销毁颜色滤波器对象,并收回该对象占用的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_ColorFilter 表示指向颜色滤波器对象的指针。

OH_Drawing_ColorSetArgb()

uint32_t OH_Drawing_ColorSetArgb (uint32_t alpha, uint32_t red, uint32_t green, uint32_t blue )

描述

用于将4个变量(分别描述透明度、红色、绿色和蓝色)转化为一个描述颜色的32位(ARGB)变量。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
alpha 描述透明度的变量, 变量范围是0x00~0xFF。
red 描述红色的变量, 变量范围是0x00~0xFF。
green 描述绿色的变量, 变量范围是0x00~0xFF。
blue 描述蓝色的变量, 变量范围是0x00~0xFF。

返回:

函数返回一个描述颜色的32位(ARGB)变量。

OH_Drawing_CreateFontCollection()

OH_Drawing_FontCollection* OH_Drawing_CreateFontCollection (void )

描述

创建字体集对象OH_Drawing_FontCollection

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

指向创建的字体集对象的指针。

OH_Drawing_CreateTextStyle()

OH_Drawing_TextStyle* OH_Drawing_CreateTextStyle (void )

描述

创建指向OH_Drawing_TextStyle对象的指针。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

指向创建的OH_Drawing_TextStyle对象的指针。

OH_Drawing_CreateTypography()

OH_Drawing_Typography* OH_Drawing_CreateTypography (OH_Drawing_TypographyCreate * )

描述

创建指向OH_Drawing_Typography对象的指针。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyCreate 指向OH_Drawing_TypographyCreate对象的指针,由OH_Drawing_CreateTypographyHandler获取。

返回:

指向OH_Drawing_Typography对象的指针。

OH_Drawing_CreateTypographyHandler()

OH_Drawing_TypographyCreate* OH_Drawing_CreateTypographyHandler (OH_Drawing_TypographyStyle * , OH_Drawing_FontCollection *  )

描述

创建指向OH_Drawing_TypographyCreate对象的指针。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle的指针,由OH_Drawing_CreateTypographyStyle获取。
OH_Drawing_FontCollection 指向OH_Drawing_FontCollection的指针,由OH_Drawing_CreateFontCollection获取。

返回:

指向新创建的OH_Drawing_TypographyCreate对象的指针。

OH_Drawing_CreateTypographyStyle()

OH_Drawing_TypographyStyle* OH_Drawing_CreateTypographyStyle (void )

描述

创建指向OH_Drawing_TypographyStyle对象的指针。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

指向创建的OH_Drawing_TypographyStyle对象的指针。

OH_Drawing_DestroyFontCollection()

void OH_Drawing_DestroyFontCollection (OH_Drawing_FontCollection * )

描述

释放被字体集对象占据的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_FontCollection 指向字体集对象的指针。

OH_Drawing_DestroyTextStyle()

void OH_Drawing_DestroyTextStyle (OH_Drawing_TextStyle * )

描述

释放被OH_Drawing_TextStyle对象占据的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。

OH_Drawing_DestroyTypography()

void OH_Drawing_DestroyTypography (OH_Drawing_Typography * )

描述

释放OH_Drawing_Typography对象占据的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

OH_Drawing_DestroyTypographyHandler()

void OH_Drawing_DestroyTypographyHandler (OH_Drawing_TypographyCreate * )

描述

释放被OH_Drawing_TypographyCreate对象占据的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyCreate 指向OH_Drawing_TypographyCreate对象的指针,由OH_Drawing_CreateTypographyHandler获取。

OH_Drawing_DestroyTypographyStyle()

void OH_Drawing_DestroyTypographyStyle (OH_Drawing_TypographyStyle * )

描述

释放被OH_Drawing_TypographyStyle对象占据的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle对象的指针,由OH_Drawing_CreateTypographyStyle获取。

OH_Drawing_FilterCreate()

OH_Drawing_Filter* OH_Drawing_FilterCreate (void )

描述

创建一个滤波器对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

返回创建的滤波器对象的指针。

OH_Drawing_FilterDestroy()

void OH_Drawing_FilterDestroy (OH_Drawing_Filter * )

描述

销毁滤波器对象,并收回该对象占用的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Filter 指示指向滤波器对象的指针。

OH_Drawing_FilterSetColorFilter()

void OH_Drawing_FilterSetColorFilter (OH_Drawing_Filter * , OH_Drawing_ColorFilter *  )

描述

为滤波器对象设置颜色滤波器对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Filter 指示指向滤波器对象的指针。
OH_Drawing_ColorFilter 指示指向颜色滤波器对象的指针。

OH_Drawing_FilterSetMaskFilter()

void OH_Drawing_FilterSetMaskFilter (OH_Drawing_Filter * , OH_Drawing_MaskFilter *  )

描述

为滤波器对象设置蒙板滤波器对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Filter 指示指向滤波器对象的指针。
OH_Drawing_MaskFilter 指示指向模板滤波器对象的指针。

OH_Drawing_FontCreate()

OH_Drawing_Font* OH_Drawing_FontCreate (void )

描述

用于创建一个字体对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

函数会返回一个指针,指针指向创建的字体对象。

OH_Drawing_FontDestroy()

void OH_Drawing_FontDestroy (OH_Drawing_Font * )

描述

用于销毁字体对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Font 指向字体对象的指针。

OH_Drawing_FontSetFakeBoldText()

void OH_Drawing_FontSetFakeBoldText (OH_Drawing_Font * , bool isFakeBoldText )

描述

用于设置增加描边宽度以近似粗体字体效果。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Font 指向字体对象的指针。
isFakeBoldText 参数真为使能增加描边宽度,参数假为不使能。

OH_Drawing_FontSetLinearText()

void OH_Drawing_FontSetLinearText (OH_Drawing_Font * , bool isLinearText )

描述

用于设置线性可缩放字体。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Font 指向字体对象的指针。
isLinearText 参数真为使能线性可缩放字体,参数假为不使能。

OH_Drawing_FontSetTextSize()

void OH_Drawing_FontSetTextSize (OH_Drawing_Font * , float textSize )

描述

用于给字体设置文字大小。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Font 指向字体对象的指针。
textSize 字体大小。

OH_Drawing_FontSetTextSkewX()

void OH_Drawing_FontSetTextSkewX (OH_Drawing_Font * , float skewX )

描述

用于给字体设置文本倾斜。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Font 指向字体对象的指针。
skewX X轴相对于Y轴的倾斜度。

OH_Drawing_FontSetTypeface()

void OH_Drawing_FontSetTypeface (OH_Drawing_Font * , OH_Drawing_Typeface *  )

描述

用于给字体设置字形。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Font 指向字体对象的指针。
OH_Drawing_Typeface 指向字形对象的指针。

OH_Drawing_GetAffinityFromPositionAndAffinity()

int OH_Drawing_GetAffinityFromPositionAndAffinity (OH_Drawing_PositionAndAffinity * )

描述

获取OH_Drawing_PositionAndAffinity对象的亲和性,根据亲和性可判断字体会靠近前方文本还是后方文本

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_PositionAndAffinity 指向OH_Drawing_PositionAndAffinity对象的指针,由OH_Drawing_TypographyGetGlyphPositionAtCoordinateOH_Drawing_TypographyGetGlyphPositionAtCoordinateWithCluster获取。

返回:

返回OH_Drawing_PositionAndAffinity对象的亲和性

OH_Drawing_GetBottomFromTextBox()

float OH_Drawing_GetBottomFromTextBox (OH_Drawing_TextBox * , int  )

描述

获取文本框底部位置

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBox 指向OH_Drawing_TextBox对象的指针,由OH_Drawing_TypographyGetRectsForRangeOH_Drawing_TypographyGetRectsForPlaceholders获取。
int 文本框的索引

返回:

返回文本框底部位置

OH_Drawing_GetEndFromRange()

size_t OH_Drawing_GetEndFromRange (OH_Drawing_Range * )

描述

获取OH_Drawing_Range对象结束位置。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Range 指向OH_Drawing_Range对象的指针,由OH_Drawing_TypographyGetWordBoundary获取。

返回:

返回OH_Drawing_Range对象结束位置

OH_Drawing_GetLeftFromTextBox()

float OH_Drawing_GetLeftFromTextBox (OH_Drawing_TextBox * , int  )

描述

获取文本框左侧位置

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBox 指向OH_Drawing_TextBox对象的指针,由OH_Drawing_TypographyGetRectsForRangeOH_Drawing_TypographyGetRectsForPlaceholders获取。
int 文本框的索引

返回:

返回文本框左侧位置

OH_Drawing_GetPositionFromPositionAndAffinity()

size_t OH_Drawing_GetPositionFromPositionAndAffinity (OH_Drawing_PositionAndAffinity * )

描述

获取OH_Drawing_PositionAndAffinity对象的位置属性

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_PositionAndAffinity 指向OH_Drawing_PositionAndAffinity对象的指针,由OH_Drawing_TypographyGetGlyphPositionAtCoordinateOH_Drawing_TypographyGetGlyphPositionAtCoordinateWithCluster获取。

返回:

返回OH_Drawing_PositionAndAffinity对象的位置属性

OH_Drawing_GetRightFromTextBox()

float OH_Drawing_GetRightFromTextBox (OH_Drawing_TextBox * , int  )

描述

获取文本框右侧位置

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBox 指向OH_Drawing_TextBox对象的指针,由OH_Drawing_TypographyGetRectsForRangeOH_Drawing_TypographyGetRectsForPlaceholders获取。
int 文本框的索引

返回:

返回文本框右侧位置

OH_Drawing_GetSizeOfTextBox()

size_t OH_Drawing_GetSizeOfTextBox (OH_Drawing_TextBox * )

描述

获取文本框数量大小

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBox 指向OH_Drawing_TextBox对象的指针,由OH_Drawing_TypographyGetRectsForRangeOH_Drawing_TypographyGetRectsForPlaceholders获取。

返回:

返回文本框数量大小

OH_Drawing_GetStartFromRange()

size_t OH_Drawing_GetStartFromRange (OH_Drawing_Range * )

描述

获取OH_Drawing_Range对象开始位置。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Range 指向OH_Drawing_Range对象的指针,由OH_Drawing_TypographyGetWordBoundary获取。

返回:

返回OH_Drawing_Range对象开始位置

OH_Drawing_GetTextDirectionFromTextBox()

int OH_Drawing_GetTextDirectionFromTextBox (OH_Drawing_TextBox * , int  )

描述

获取文本框方向

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBox 指向OH_Drawing_TextBox对象的指针,由OH_Drawing_TypographyGetRectsForRangeOH_Drawing_TypographyGetRectsForPlaceholders获取。
int 文本框的索引

返回:

返回文本框方向

OH_Drawing_GetTopFromTextBox()

float OH_Drawing_GetTopFromTextBox (OH_Drawing_TextBox * , int  )

描述

获取文本框顶部位置

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBox 指向OH_Drawing_TextBox对象的指针,由OH_Drawing_TypographyGetRectsForRangeOH_Drawing_TypographyGetRectsForPlaceholders获取。
int 文本框的索引

返回:

返回文本框顶部位置

OH_Drawing_MaskFilterCreateBlur()

OH_Drawing_MaskFilter* OH_Drawing_MaskFilterCreateBlur (OH_Drawing_BlurType blurType, float sigma, bool respectCTM )

描述

创建具有模糊效果的模板滤波器。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
blurType 表示模糊类型。
sigma 表示要应用的高斯模糊的标准偏差。必须大于0。
respectCTM 表示模糊标准差值被CTM修改,默认为真。

返回:

返回创建的模板滤波器对象的指针。

OH_Drawing_MaskFilterDestroy()

void OH_Drawing_MaskFilterDestroy (OH_Drawing_MaskFilter * )

描述

销毁模板滤波器对象,并收回该对象占用的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_MaskFilter 表示指向模板滤波器对象的指针。

OH_Drawing_MatrixCreate()

OH_Drawing_Matrix* OH_Drawing_MatrixCreate (void )

描述

用于创建一个矩阵对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

函数会返回一个指针,指针指向创建的矩阵对象。

OH_Drawing_MatrixDestroy()

void OH_Drawing_MatrixDestroy (OH_Drawing_Matrix * )

描述

用于销毁矩阵对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Matrix 指向字体对象的指针。

OH_Drawing_MatrixSetMatrix()

void OH_Drawing_MatrixSetMatrix (OH_Drawing_Matrix * , float scaleX, float skewX, float transX, float skewY, float scaleY, float transY, float persp0, float persp1, float persp2 )

描述

用于给矩阵对象设置参数。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Matrix 指向矩阵对象的指针。
scaleX 水平缩放系数。
skewX 水平倾斜系数。
transX 水平位移系数。
skewY 垂直倾斜系数。
scaleY 垂直缩放系数。
transY 垂直位移系数。
persp0 X轴透视系数。
persp1 Y轴透视系数。
persp2 透视缩放系数。

OH_Drawing_PathArcTo()

void OH_Drawing_PathArcTo (OH_Drawing_Path * , float x1, float y1, float x2, float y2, float startDeg, float sweepDeg )

描述

用于给路径添加一段弧线,绘制弧线的方式为角度弧,该方式首先会指定一个矩形边框,矩形边框会包裹椭圆, 然后会指定一个起始角度和扫描度数,从起始角度扫描截取的椭圆周长一部分即为绘制的弧线。另外会默认添加一条从路径的最后点位置到弧线起始点位置的线段。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。
x1 包围椭圆的矩形左上角点位置的横坐标。
y1 包围椭圆的矩形左上角点位置的纵坐标。
x2 包围椭圆的矩形右下角点位置的横坐标。
y2 包围椭圆的矩形右下角点位置的纵坐标。
startDeg 起始的角度。
sweepDeg 扫描的度数。

OH_Drawing_PathClose()

void OH_Drawing_PathClose (OH_Drawing_Path * )

描述

用于闭合路径,会添加一条从路径起点位置到最后点位置的线段。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。

OH_Drawing_PathCreate()

OH_Drawing_Path* OH_Drawing_PathCreate (void )

描述

用于创建一个路径对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

函数会返回一个指针,指针指向创建的路径对象。

OH_Drawing_PathCubicTo()

void OH_Drawing_PathCubicTo (OH_Drawing_Path * , float ctrlX1, float ctrlY1, float ctrlX2, float ctrlY2, float endX, float endY )

描述

用于添加一条从路径最后点位置到目标点位置的三阶贝塞尔圆滑曲线。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。
ctrlX1 第一个控制点位置的横坐标。
ctrlY1 第一个控制点位置的纵坐标。
ctrlX2 第二个控制点位置的横坐标。
ctrlY2 第二个控制点位置的纵坐标。
endX 目标点位置的横坐标。
endY 目标点位置的纵坐标。

OH_Drawing_PathDestroy()

void OH_Drawing_PathDestroy (OH_Drawing_Path * )

描述

用于销毁路径对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。

OH_Drawing_PathLineTo()

void OH_Drawing_PathLineTo (OH_Drawing_Path * , float x, float y )

描述

用于添加一条从路径的最后点位置到目标点位置的线段。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。
x 目标点的横坐标。
y 目标点的纵坐标。

OH_Drawing_PathMoveTo()

void OH_Drawing_PathMoveTo (OH_Drawing_Path * , float x, float y )

描述

用于设置自定义路径的起始点位置。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。
x 起始点的横坐标。
y 起始点的纵坐标。

OH_Drawing_PathQuadTo()

void OH_Drawing_PathQuadTo (OH_Drawing_Path * , float ctrlX, float ctrlY, float endX, float endY )

描述

用于添加一条从路径最后点位置到目标点位置的二阶贝塞尔圆滑曲线。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。
ctrlX 控制点位置的横坐标。
ctrlY 控制点位置的纵坐标。
endX 目标点位置的横坐标。
endY 目标点位置的纵坐标。

OH_Drawing_PathReset()

void OH_Drawing_PathReset (OH_Drawing_Path * )

描述

用于重置自定义路径数据。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Path 指向路径对象的指针。

OH_Drawing_PenCreate()

OH_Drawing_Pen* OH_Drawing_PenCreate (void )

描述

用于创建一个画笔对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

返回:

函数会返回一个指针,指针指向创建的画笔对象。

OH_Drawing_PenDestroy()

void OH_Drawing_PenDestroy (OH_Drawing_Pen * )

描述

用于销毁画笔对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。

OH_Drawing_PenGetAlpha()

uint8_t OH_Drawing_PenGetAlpha (const OH_Drawing_Pen * )

描述

获取画笔的透明度值。画笔在勾勒图形时透明通道会使用该值。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Pen 表示指向画笔对象的指针。

返回:

返回一个8比特的值表示透明度。

OH_Drawing_PenGetCap()

OH_Drawing_PenLineCapStyle OH_Drawing_PenGetCap (const OH_Drawing_Pen * )

描述

用于获取画笔笔帽的样式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。

返回:

函数返回画笔笔帽样式。

OH_Drawing_PenGetColor()

uint32_t OH_Drawing_PenGetColor (const OH_Drawing_Pen * )

描述

用于获取画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。

返回:

函数返回一个描述颜色的32位(ARGB)变量。

OH_Drawing_PenGetJoin()

OH_Drawing_PenLineJoinStyle OH_Drawing_PenGetJoin (const OH_Drawing_Pen * )

描述

用于获取画笔绘制折线转角的样式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。

返回:

函数返回折线转角的样式。

OH_Drawing_PenGetMiterLimit()

float OH_Drawing_PenGetMiterLimit (const OH_Drawing_Pen * )

描述

用于获取折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。

返回:

函数返回尖角的限制值。

OH_Drawing_PenGetWidth()

float OH_Drawing_PenGetWidth (const OH_Drawing_Pen * )

描述

用于获取画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。

返回:

函数返回画笔的厚度。

OH_Drawing_PenIsAntiAlias()

bool OH_Drawing_PenIsAntiAlias (const OH_Drawing_Pen * )

描述

用于获取画笔是否设置抗锯齿属性,如果为真则说明画笔会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。

返回:

函数返回画笔对象是否设置抗锯齿属性,返回真则设置了抗锯齿,返回假则没有设置抗锯齿。

OH_Drawing_PenSetAlpha()

void OH_Drawing_PenSetAlpha (OH_Drawing_Pen * , uint8_t alpha )

描述

为画笔设置透明度值。画笔在勾勒图形时透明通道会使用该值。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Pen 表示指向画笔对象的指针。
alpha 表示要设置的透明度值,是一个8比特的变量。

OH_Drawing_PenSetAntiAlias()

void OH_Drawing_PenSetAntiAlias (OH_Drawing_Pen * , bool  )

描述

用于设置画笔的抗锯齿属性,设置为真则画笔在绘制图形时会对图形的边缘像素进行半透明的模糊处理。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。
bool 参数真为抗锯齿,参数假则不做抗锯齿处理。

OH_Drawing_PenSetCap()

void OH_Drawing_PenSetCap (OH_Drawing_Pen * , OH_Drawing_PenLineCapStyle  )

描述

用于设置画笔笔帽样式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。
OH_Drawing_PenLineCapStyle 描述画笔笔帽样式的变量。

OH_Drawing_PenSetColor()

void OH_Drawing_PenSetColor (OH_Drawing_Pen * , uint32_t color )

描述

用于设置画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。
color 描述颜色的32位(ARGB)变量。

OH_Drawing_PenSetFilter()

void OH_Drawing_PenSetFilter (OH_Drawing_Pen* , OH_Drawing_Filter*  )

描述

设置画笔滤波器。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象OH_Drawing_Pen的指针。
OH_Drawing_Filter 指向滤波器OH_Drawing_Filter的指针,为空表示清空画笔滤波器。

OH_Drawing_PenSetJoin()

void OH_Drawing_PenSetJoin (OH_Drawing_Pen * , OH_Drawing_PenLineJoinStyle  )

描述

用于设置画笔绘制转角的样式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。
OH_Drawing_PenLineJoinStyle 描述折线转角样式的变量。

OH_Drawing_PenSetMiterLimit()

void OH_Drawing_PenSetMiterLimit (OH_Drawing_Pen * , float miter )

描述

用于设置折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。
miter 描述尖角限制值的变量。

OH_Drawing_PenSetShaderEffect()

void OH_Drawing_PenSetShaderEffect (OH_Drawing_Pen* , OH_Drawing_ShaderEffect*  )

描述

设置画笔着色器效果。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象OH_Drawing_Pen的指针。
OH_Drawing_ShaderEffect 指向着色器对象OH_Drawing_ShaderEffect的指针。

OH_Drawing_PenSetWidth()

void OH_Drawing_PenSetWidth (OH_Drawing_Pen * , float width )

描述

用于设置画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Pen 指向画笔对象的指针。
width 描述画笔厚度的变量。

OH_Drawing_PointCreate()

OH_Drawing_Point* OH_Drawing_PointCreate (float x, float y )

描述

用于创建一个坐标点对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
x X轴坐标。
y Y轴坐标。

返回:

函数会返回一个指针,指针指向创建的坐标点对象。

OH_Drawing_PointDestroy()

void OH_Drawing_PointDestroy (OH_Drawing_Point * )

描述

用于销毁坐标点对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Point 指向坐标点对象的指针。

OH_Drawing_RectCreate()

OH_Drawing_Rect* OH_Drawing_RectCreate (float left, float top, float right, float bottom )

描述

用于创建一个矩形对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
left 矩形左上角的横坐标。
top 矩形左上角的纵坐标。
right 矩形右下角的横坐标。
bottom 矩形右下角的纵坐标。

返回:

函数会返回一个指针,指针指向创建的矩形对象。

OH_Drawing_RectDestroy()

void OH_Drawing_RectDestroy (OH_Drawing_Rect * )

描述

用于销毁矩形对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Rect 指向矩形对象的指针。

OH_Drawing_RoundRectCreate()

OH_Drawing_RoundRect* OH_Drawing_RoundRectCreate (const OH_Drawing_Rect * , float xRad, float yRad )

描述

用于创建一个圆角矩形对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Rect 指向矩形对象的指针。
xRad X轴上的圆角半径。
yRad Y轴上的圆角半径。

返回:

函数会返回一个指针,指针指向创建的圆角矩形对象。

OH_Drawing_RoundRectDestroy()

void OH_Drawing_RoundRectDestroy (OH_Drawing_RoundRect * )

描述

用于销毁圆角矩形对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_RoundRect 指向圆角矩形对象的指针。

OH_Drawing_RegisterFont()

uint32_t OH_Drawing_RegisterFont (OH_Drawing_FontCollection* , const char* fontFamily, const char* familySrc )

描述

用于在字体管理器中注册自定义字体。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_FontCollection 指向OH_Drawing_FontCollection对象的指针。
fontFamily 指需要注册的字体的字体名称。
familySrc 指需要注册的字体文件的路径。

返回:

返回错误代码,0为成功,1为文件不存在,2为打开文件失败,3为读取文件失败,4为寻找文件失败,5为获取大小失败。

OH_Drawing_RegisterFontBuffer()

uint32_t OH_Drawing_RegisterFontBuffer (OH_Drawing_FontCollection* , const char* fontFamily, uint8_t* fontBuffer, size_t length )

描述

用于在字体管理器中注册字体缓冲区。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_FontCollection 指向OH_Drawing_FontCollection对象的指针。
fontFamily 指需要注册的字体的字体名称。
fontBuffer 指需要注册的字体文件的缓冲区。
length 指需要注册的字体文件的长度。

返回:

返回错误代码,0为成功,6为缓冲区大小为零,7为字体集合为空。

OH_Drawing_SetTextStyleBaseLine()

void OH_Drawing_SetTextStyleBaseLine (OH_Drawing_TextStyle * , int  )

描述

设置字体基线位置。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
int 设置字体基线位置,设置1基线位于底部,设置0或其它基线在中间偏下的位置,具体可见OH_Drawing_TextBaseline枚举。

OH_Drawing_SetTextStyleColor()

void OH_Drawing_SetTextStyleColor (OH_Drawing_TextStyle * , uint32_t  )

描述

设置文本颜色。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
uint32_t 颜色。

OH_Drawing_SetTextStyleDecoration()

void OH_Drawing_SetTextStyleDecoration (OH_Drawing_TextStyle * , int  )

描述

设置装饰。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
int 设置装饰,设置1为下划线,设置2为上划线,设置3为删除线,设置0或其它为无装饰,具体可见OH_Drawing_TextDecoration枚举。

OH_Drawing_SetTextStyleDecorationColor()

void OH_Drawing_SetTextStyleDecorationColor (OH_Drawing_TextStyle * , uint32_t  )

描述

设置装饰颜色。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
uint32_t 颜色。

OH_Drawing_SetTextStyleDecorationStyle()

void OH_Drawing_SetTextStyleDecorationStyle (OH_Drawing_TextStyle * , int  )

描述

设置文本装饰样式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
int 设置的文本装饰样式,支持可选的装饰样式具体可见OH_Drawing_TextDecorationStyle枚举。

OH_Drawing_SetTextStyleDecorationThicknessScale()

void OH_Drawing_SetTextStyleDecorationThicknessScale (OH_Drawing_TextStyle * , double  )

描述

设置文本装饰线的厚度缩放比例。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
double 缩放比例。

OH_Drawing_SetTextStyleEllipsis()

void OH_Drawing_SetTextStyleEllipsis (OH_Drawing_TextStyle * , const char *  )

描述

设置文本的省略号内容。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
char* 设置省略号内容,数据类型为指向char的指针。

OH_Drawing_SetTextStyleEllipsisModal()

void OH_Drawing_SetTextStyleEllipsisModal (OH_Drawing_TextStyle * , int  )

描述

设置文本的省略号样式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
int 设置省略号样式,支持可选的省略号样式具体可见OH_Drawing_EllipsisModal枚举。

OH_Drawing_SetTextStyleFontFamilies()

void OH_Drawing_SetTextStyleFontFamilies (OH_Drawing_TextStyle * , int , const char * fontFamilies[] )

描述

设置字体类型。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
int 字体名称数量。
char 指向字体类型的指针。

OH_Drawing_SetTextStyleFontHeight()

void OH_Drawing_SetTextStyleFontHeight (OH_Drawing_TextStyle * , double  )

描述

设置字体高度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
double 字体高度。

OH_Drawing_SetTextStyleFontSize()

void OH_Drawing_SetTextStyleFontSize (OH_Drawing_TextStyle * , double  )

描述

设置字号。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
double 字号。

OH_Drawing_SetTextStyleFontStyle()

void OH_Drawing_SetTextStyleFontStyle (OH_Drawing_TextStyle * , int  )

描述

设置字体风格。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
int 设置字体风格,设置1为斜体,设置0或其它为非斜体,具体可见OH_Drawing_FontStyle枚举。

OH_Drawing_SetTextStyleFontWeight()

void OH_Drawing_SetTextStyleFontWeight (OH_Drawing_TextStyle * , int  )

描述

设置字重。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
int 设置字重,设置0字重为thin,设置1字重为extra-light,设置2字重为light,设置4字重为medium,设置5字重为semi-bold,设置6字重为bold,设置7字重为extra-bold,设置8字重为black,设置3或其它字重为normal/regular,具体可见OH_Drawing_FontWeight枚举。

OH_Drawing_SetTextStyleHalfLeading()

void OH_Drawing_SetTextStyleHalfLeading (OH_Drawing_TextStyle * , bool  )

描述

设置文本为一半行间距。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
bool 设置一半行间距是否生效,true表示生效,false表示不生效。

OH_Drawing_SetTextStyleLetterSpacing()

void OH_Drawing_SetTextStyleLetterSpacing (OH_Drawing_TextStyle * , double  )

描述

设置文本的字符间距。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
double 间距大小。

OH_Drawing_SetTextStyleLocale()

void OH_Drawing_SetTextStyleLocale (OH_Drawing_TextStyle * , const char *  )

描述

设置语言区域。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
char 语言区域,数据类型为指向char的指针。

OH_Drawing_SetTextStyleWordSpacing()

void OH_Drawing_SetTextStyleWordSpacing (OH_Drawing_TextStyle * , double  )

描述

设置文本的单词间距。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。
double 间距大小。

OH_Drawing_SetTypographyTextAlign()

void OH_Drawing_SetTypographyTextAlign (OH_Drawing_TypographyStyle * , int  )

描述

设置文本对齐方式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle对象的指针,由OH_Drawing_CreateTypographyStyle获取。
int 设置文本对齐方式,设置1为右对齐,设置2为居中对齐,设置3为两端对齐,设置4为与文字方向相同,设置5为文字方向相反,设置0或其它为左对齐,具体可见OH_Drawing_TextAlign枚举。

OH_Drawing_SetTypographyTextBreakStrategy()

void OH_Drawing_SetTypographyTextBreakStrategy (OH_Drawing_TypographyStyle * , int  )

描述

设置文本的中断策略

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle对象的指针,由OH_Drawing_CreateTypographyStyle获取。
int 设置中断策略,支持可选的中断策略具体可见OH_Drawing_BreakStrategy枚举。

OH_Drawing_SetTypographyTextDirection()

void OH_Drawing_SetTypographyTextDirection (OH_Drawing_TypographyStyle * , int  )

描述

设置文本方向。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle对象的指针,由OH_Drawing_CreateTypographyStyle获取。
int 设置文本方向,设置1为从左到右,设置0或其它为从右到左,具体可见OH_Drawing_TextDirection枚举。

OH_Drawing_SetTypographyTextEllipsisModal()

void OH_Drawing_SetTypographyTextEllipsisModal (OH_Drawing_TypographyStyle * , int  )

描述

设置文本的省略号样式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle对象的指针,由OH_Drawing_CreateTypographyStyle获取。
int 设置省略号样式,支持可选的省略号样式样式具体可见OH_Drawing_EllipsisModal枚举。

OH_Drawing_SetTypographyTextMaxLines()

void OH_Drawing_SetTypographyTextMaxLines (OH_Drawing_TypographyStyle * , int  )

描述

设置文本最大行数。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle对象的指针,由OH_Drawing_CreateTypographyStyle获取。
int 最大行数。

OH_Drawing_SetTypographyTextWordBreakType()

void OH_Drawing_SetTypographyTextWordBreakType (OH_Drawing_TypographyStyle * , int  )

描述

设置单词的断词方式。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TypographyStyle 指向OH_Drawing_TypographyStyle对象的指针,由OH_Drawing_CreateTypographyStyle获取。
int 设置断词方式,支持可选的断词方式样式具体可见OH_Drawing_WordBreakType枚举。

OH_Drawing_ShaderEffectCreateLinearGradient()

OH_Drawing_ShaderEffect* OH_Drawing_ShaderEffectCreateLinearGradient (const OH_Drawing_Point * startPt, const OH_Drawing_Point * endPt, const uint32_t * colors, const float * pos, uint32_t size, OH_Drawing_TileMode  )

描述

创建着色器,在两个指定点之间生成线性渐变。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
startPt 表示渐变的起点。
endPt 表示渐变的终点。
colors 表示在两个点之间分布的颜色。
pos 表示每种对应颜色在颜色数组中的相对位置。
size 表示颜色和位置的数量。
OH_Drawing_TileMode 着色器效果平铺模式类型,支持可选的具体模式可见OH_Drawing_TileMode枚举。

返回:

返回创建的着色器对象的指针。

OH_Drawing_ShaderEffectCreateRadialGradient()

OH_Drawing_ShaderEffect* OH_Drawing_ShaderEffectCreateRadialGradient (const OH_Drawing_Point * centerPt, float radius, const uint32_t * colors, const float * pos, uint32_t size, OH_Drawing_TileMode  )

描述

创建着色器,在给定圆心和半径的情况下生成径向渐变。 从起点到终点颜色从内到外进行圆形渐变(从中间向外拉)被称为径向渐变。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
centerPt 指示渐变的圆心。
radius 指示此渐变的圆半径。
colors 表示在两个点之间分布的颜色。
pos 表示每种对应颜色在颜色数组中的相对位置。
size 表示颜色和位置的数量。
OH_Drawing_TileMode 着色器效果平铺模式类型,支持可选的具体模式可见OH_Drawing_TileMode枚举。

返回:

返回创建的着色器对象的指针。

OH_Drawing_ShaderEffectCreateSweepGradient()

OH_Drawing_ShaderEffect* OH_Drawing_ShaderEffectCreateSweepGradient (const OH_Drawing_Point * centerPt, const uint32_t * colors, const float * pos, uint32_t size, OH_Drawing_TileMode  )

描述

创建着色器,在给定中心的情况下生成扇形渐变。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
centerPt 表示渐变的圆心。
colors 表示在两个点之间分布的颜色。
pos 表示每种对应颜色在颜色数组中的相对位置。
size 表示颜色和位置的数量。
OH_Drawing_TileMode 着色器效果平铺模式类型,支持可选的具体模式可见OH_Drawing_TileMode枚举。

返回:

返回创建的着色器对象的指针。

OH_Drawing_ShaderEffectDestroy()

void OH_Drawing_ShaderEffectDestroy (OH_Drawing_ShaderEffect * )

描述

销毁着色器对象,并收回该对象占用的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_ShaderEffect 表示指向着色器对象的指针。

OH_Drawing_TextBlobBuilderAllocRunPos()

const OH_Drawing_RunBuffer* OH_Drawing_TextBlobBuilderAllocRunPos (OH_Drawing_TextBlobBuilder * , const OH_Drawing_Font * , int32_t count, const OH_Drawing_Rect *  )

描述

申请一块内存,用于存储文字和位置信息。返回的指针无需调用者管理, 当调用OH_Drawing_TextBlobBuilderMake后禁止使用。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBlobBuilder 指向文本构造器对象的指针。
OH_Drawing_Font 指向字体对象的指针。
count 文字的数量。
OH_Drawing_Rect 文本的边界框。

OH_Drawing_TextBlobBuilderCreate()

OH_Drawing_TextBlobBuilder* OH_Drawing_TextBlobBuilderCreate (void )

描述

用于创建一个文本构造器对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

函数会返回一个指针,指针指向创建的文本构造器对象。

OH_Drawing_TextBlobBuilderDestroy()

void OH_Drawing_TextBlobBuilderDestroy (OH_Drawing_TextBlobBuilder * )

描述

用于销毁文本构造器对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBlobBuilder 指向文本构造器对象的指针。

OH_Drawing_TextBlobBuilderMake()

OH_Drawing_TextBlob* OH_Drawing_TextBlobBuilderMake (OH_Drawing_TextBlobBuilder * )

描述

用于从文本构造器中创建文本对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBlobBuilder 指向文本构造器对象的指针。

返回:

返回一个指针,指针指向创建的文本对象。

OH_Drawing_TextBlobDestroy()

void OH_Drawing_TextBlobDestroy (OH_Drawing_TextBlob * )

描述

用于销毁文本对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TextBlob 指向文本对象的指针。

OH_Drawing_TypefaceCreateDefault()

OH_Drawing_Typeface* OH_Drawing_TypefaceCreateDefault (void )

描述

用于创建一个默认的字形对象。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

返回:

返回一个指针,指针指向创建的字形对象。

OH_Drawing_TypefaceDestroy()

void OH_Drawing_TypefaceDestroy (OH_Drawing_Typeface * )

描述

用于销毁字形对象并回收该对象占有的内存。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typeface 指向字形对象的指针。

OH_Drawing_TypographyDidExceedMaxLines()

bool OH_Drawing_TypographyDidExceedMaxLines (OH_Drawing_Typography * )

描述

获取文本是否超过最大行。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回文本是否超过最大行,true表示超过,false表示未超过

OH_Drawing_TypographyGetAlphabeticBaseline()

double OH_Drawing_TypographyGetAlphabeticBaseline (OH_Drawing_Typography * )

描述

获取字母文字基线。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 9

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回字母文字基线。

OH_Drawing_TypographyGetGlyphPositionAtCoordinate()

OH_Drawing_PositionAndAffinity* OH_Drawing_TypographyGetGlyphPositionAtCoordinate (OH_Drawing_Typography * , double , double  )

描述

获取坐标处文本的索引位置和亲和性。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
double 光标的x坐标。
double 光标的y坐标。

返回:

返回坐标处字体的索引位置和亲和性,返回类型为OH_Drawing_PositionAndAffinity结构体。

OH_Drawing_TypographyGetGlyphPositionAtCoordinateWithCluster()

OH_Drawing_PositionAndAffinity* OH_Drawing_TypographyGetGlyphPositionAtCoordinateWithCluster (OH_Drawing_Typography * , double , double  )

描述

获取坐标处文本所属字符簇的索引位置和亲和性,字符簇指一个或多个字符组成的整体。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
double 光标的x坐标。
double 光标的y坐标。

返回:

返回坐标处指定类型字体的索引位置和亲和性,返回类型为OH_Drawing_PositionAndAffinity结构体。

OH_Drawing_TypographyGetHeight()

double OH_Drawing_TypographyGetHeight (OH_Drawing_Typography * )

描述

获取高度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 9

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回高度。

OH_Drawing_TypographyGetIdeographicBaseline()

double OH_Drawing_TypographyGetIdeographicBaseline (OH_Drawing_Typography * )

描述

获取表意文字基线。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 9

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回表意文字基线。

OH_Drawing_TypographyGetLineCount()

size_t OH_Drawing_TypographyGetLineCount (OH_Drawing_Typography * )

描述

获取文本行数。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回行数。

OH_Drawing_TypographyGetLineHeight()

double OH_Drawing_TypographyGetLineHeight (OH_Drawing_Typography * , int  )

描述

获取指定行的行高。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
int 要指定的行数。

返回:

返回指定行的行高。

OH_Drawing_TypographyGetLineWidth()

double OH_Drawing_TypographyGetLineWidth (OH_Drawing_Typography * , int  )

描述

获取指定行的行宽。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
int 要指定的行数。

返回:

返回指定行的行宽。

OH_Drawing_TypographyGetLongestLine()

double OH_Drawing_TypographyGetLongestLine (OH_Drawing_Typography * )

描述

获取最长行的宽度,建议实际使用时将返回值向上取整。当文本内容为空时,返回float的最小值,即:-340282346638528859811704183484516925440.000000。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 9

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回最长行的宽度。

OH_Drawing_TypographyGetMaxIntrinsicWidth()

double OH_Drawing_TypographyGetMaxIntrinsicWidth (OH_Drawing_Typography * )

描述

获取最大固有宽度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 9

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回最大固有宽度。

OH_Drawing_TypographyGetMaxWidth()

double OH_Drawing_TypographyGetMaxWidth (OH_Drawing_Typography * )

描述

获取最大宽度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 9

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回最大宽度。

OH_Drawing_TypographyGetMinIntrinsicWidth()

double OH_Drawing_TypographyGetMinIntrinsicWidth (OH_Drawing_Typography * )

描述

获取最小固有宽度。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 9

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回最小固有宽度。

OH_Drawing_TypographyGetRectsForPlaceholders()

OH_Drawing_TextBox* OH_Drawing_TypographyGetRectsForPlaceholders (OH_Drawing_Typography * )

描述

获取占位符的文本框。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。

返回:

返回占位符的文本框,返回类型为OH_Drawing_TextBox结构体。

OH_Drawing_TypographyGetRectsForRange()

OH_Drawing_TextBox* OH_Drawing_TypographyGetRectsForRange (OH_Drawing_Typography * , size_t , size_t , OH_Drawing_RectHeightStyle , OH_Drawing_RectWidthStyle  )

描述

获取指定范围内的文本框。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
size_t 设置开始位置。
size_t 设置结束位置。
OH_Drawing_RectHeightStyle 设置高度样式,支持可选的高度样式具体可见OH_Drawing_RectHeightStyle枚举。
OH_Drawing_RectWidthStyle 设置宽度样式,支持可选的宽度样式具体可见OH_Drawing_RectWidthStyle枚举。

返回:

返回指定范围内的文本框,具体可见OH_Drawing_TextBox结构体。

OH_Drawing_TypographyGetWordBoundary()

OH_Drawing_Range* OH_Drawing_TypographyGetWordBoundary (OH_Drawing_Typography * , size_t  )

描述

获取单词的边界。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
size_t 单词索引。

返回:

返回单词边界,返回类型为OH_Drawing_Range结构体。

OH_Drawing_TypographyHandlerAddPlaceholder()

void OH_Drawing_TypographyHandlerAddPlaceholder (OH_Drawing_TypographyCreate * , OH_Drawing_PlaceholderSpan *  )

描述

设置占位符。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 11

参数:

名称 描述
OH_Drawing_TypographyCreate 指向OH_Drawing_TypographyCreate对象的指针,由OH_Drawing_CreateTypographyHandler获取。
OH_Drawing_PlaceholderSpan 指向OH_Drawing_PlaceholderSpan对象的指针。

OH_Drawing_TypographyHandlerAddText()

void OH_Drawing_TypographyHandlerAddText (OH_Drawing_TypographyCreate * , const char *  )

描述

设置文本内容。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyCreate 指向OH_Drawing_TypographyCreate对象的指针,由OH_Drawing_CreateTypographyHandler获取。
char 指向文本内容的指针。

OH_Drawing_TypographyHandlerPopTextStyle()

void OH_Drawing_TypographyHandlerPopTextStyle (OH_Drawing_TypographyCreate * )

描述

排版弹出。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyCreate 指向OH_Drawing_TypographyCreate对象的指针,由OH_Drawing_CreateTypographyHandler获取。

OH_Drawing_TypographyHandlerPushTextStyle()

void OH_Drawing_TypographyHandlerPushTextStyle (OH_Drawing_TypographyCreate * , OH_Drawing_TextStyle *  )

描述

设置排版风格。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_TypographyCreate 指向OH_Drawing_TypographyCreate对象的指针,由OH_Drawing_CreateTypographyHandler获取。
OH_Drawing_TextStyle 指向OH_Drawing_TextStyle对象的指针,由OH_Drawing_CreateTextStyle获取。

OH_Drawing_TypographyLayout()

void OH_Drawing_TypographyLayout (OH_Drawing_Typography * , double  )

描述

排版布局。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
double 文本最大宽度

OH_Drawing_TypographyPaint()

void OH_Drawing_TypographyPaint (OH_Drawing_Typography * , OH_Drawing_Canvas * , double , double  )

描述

显示文本。

系统能力: SystemCapability.Graphic.Graphic2D.NativeDrawing

起始版本: 8

参数:

名称 描述
OH_Drawing_Typography 指向OH_Drawing_Typography对象的指针,由OH_Drawing_CreateTypography获取。
OH_Drawing_Canvas 指向OH_Drawing_Canvas对象的指针,由OH_Drawing_CanvasCreate获取。
double x坐标。
double y坐标。