1# Drawing 2 3 4Drawing模块提供包括2D图形渲染、文字绘制和图片显示等功能函数。 5 6 7提供2D绘制功能。 8 9 10@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 11 12 13**起始版本:** 14 15 168 17 18 19## 汇总 20 21 22### 文件 23 24| 文件名称 | 描述 | 25| ------------------------------------------------------------ | ------------------------------------------------------------ | 26| [drawing_bitmap.h](drawing__bitmap_8h.md) | 文件中定义了与位图相关的功能函数。<br>引用文件:<native_drawing/drawing_bitmap.h> | 27| [drawing_brush.h](drawing__brush_8h.md) | 文件中定义了与画刷相关的功能函数。<br>引用文件:<native_drawing/drawing_brush.h> | 28| [drawing_canvas.h](drawing__canvas_8h.md) | 文件中定义了与画布相关的功能函数。<br>引用文件:<native_drawing/drawing_canvas.h> | 29| [drawing_color.h](drawing__color_8h.md) | 文件中定义了与颜色相关的功能函数。<br>引用文件:<native_drawing/drawing_color.h> | 30| [drawing_font_collection.h](drawing__font__collection_8h.md) | 定义绘制模块中与fontCollection相关的函数。<br>引用文件:<native_drawing/drawing_font_collection.h> | 31| [drawing_path.h](drawing__path_8h.md) | 文件中定义了与自定义路径相关的功能函数。<br>引用文件:<native_drawing/drawing_path.h> | 32| [drawing_pen.h](drawing__pen_8h.md) | 文件中定义了与画笔相关的功能函数。<br>引用文件:<native_drawing/drawing_pen.h> | 33| [drawing_text_declaration.h](drawing__text__declaration_8h.md) | 提供2d drawing文本相关的数据结构声明。<br>引用文件:<native_drawing/drawing_text_declaration.h> | 34| [drawing_text_typography.h](drawing__text__typography_8h.md) | 定义绘制模块中排版相关的函数。<br>引用文件:<native_drawing/drawing_text_typography.h> | 35| [drawing_types.h](drawing__types_8h.md) | 文件中定义了用于绘制2d图形的数据类型,包括画布、画笔、画刷、位图和路径。<br>引用文件:<native_drawing/drawing_types.h> | 36 37 38### 结构体 39 40| 结构体名称 | 描述 | 41| ------------------------------------------------------------ | -------------------------------------------------------- | 42| [OH_Drawing_BitmapFormat](_o_h___drawing___bitmap_format.md) | 结构体用于描述位图像素的格式,包括颜色类型和透明度类型。 | 43 44 45### 类型定义 46 47| 类型定义名称 | 描述 | 48| ----------------------------------------------------------- | ------------------------------------------------------------ | 49| [OH_Drawing_FontCollection](#oh_drawing_fontcollection) | OH_Drawing_FontCollection用于加载字体。 | 50| [OH_Drawing_Typography](#oh_drawing_typography) | OH_Drawing_Typography用于管理排版的布局和显示等。 | 51| [OH_Drawing_TextStyle](#oh_drawing_textstyle) | OH_Drawing_TextStyle用于管理字体颜色、装饰等。 | 52| [OH_Drawing_TypographyStyle](#oh_drawing_typographystyle) | OH_Drawing_TypographyStyle用于管理排版风格,如文字方向等。 | 53| [OH_Drawing_TypographyCreate](#oh_drawing_typographycreate) | OH_Drawing_TypographyCreate用于创建OH_Drawing_Typography。 | 54| [OH_Drawing_Canvas](#oh_drawing_canvas) | OH_Drawing_Canvas定义为一块矩形的画布,可以结合画笔和画刷在上面绘制各种形状、图片和文字。 | 55| [OH_Drawing_Pen](#oh_drawing_pen) | OH_Drawing_Pen定义为画笔,画笔用于描述绘制图形轮廓的样式和颜色。 | 56| [OH_Drawing_Brush](#oh_drawing_brush) | OH_Drawing_Brush定义为画刷,画刷用于描述填充图形的样式和颜色。 | 57| [OH_Drawing_Path](#oh_drawing_path) | OH_Drawing_Path定义为路径,路径用于自定义设置各种形状。 | 58| [OH_Drawing_Bitmap](#oh_drawing_bitmap) | OH_Drawing_Bitmap定义为位图,位图是一块内存,内存中包含了描述一张图片的像素数据。 | 59 60 61### 枚举 62 63| 枚举名称 | 描述 | 64| ------------------------------------------------------------ | ------------------------------------------------------------ | 65| [OH_Drawing_PenLineCapStyle](#oh_drawing_penlinecapstyle) { LINE_FLAT_CAP, LINE_SQUARE_CAP, LINE_ROUND_CAP } | 枚举集合定义了画笔笔帽的样式,即画笔在绘制线段时,在线段头尾端点的样式。 | 66| [OH_Drawing_PenLineJoinStyle](#oh_drawing_penlinejoinstyle) { LINE_MITER_JOIN, LINE_ROUND_JOIN, LINE_BEVEL_JOIN } | 枚举集合定义了线条转角的样式,即画笔在绘制折线段时,在折线转角处的样式。 | 67| [OH_Drawing_TextDirection](#oh_drawing_textdirection) { TEXT_DIRECTION_RTL, TEXT_DIRECTION_LTR } | 文字方向。 | 68| [OH_Drawing_TextAlign](#oh_drawing_textalign) { TEXT_ALIGN_LEFT, TEXT_ALIGN_RIGHT, TEXT_ALIGN_CENTER, TEXT_ALIGN_JUSTIFY, TEXT_ALIGN_START, TEXT_ALIGN_END } | 文字对齐方式。 | 69| [OH_Drawing_FontWeight](#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 } | 字重。 | 70| [OH_Drawing_TextBaseline](#oh_drawing_textbaseline) { TEXT_BASELINE_ALPHABETIC, TEXT_BASELINE_IDEOGRAPHIC } | 基线位置。 | 71| [OH_Drawing_TextDecoration](#oh_drawing_textdecoration) { TEXT_DECORATION_NONE = 0x0, TEXT_DECORATION_UNDERLINE = 0x1, TEXT_DECORATION_OVERLINE = 0x2, TEXT_DECORATION_LINE_THROUGH = 0x4 } | 文本装饰。 | 72| [OH_Drawing_FontStyle](#oh_drawing_fontstyle) { FONT_STYLE_NORMAL, FONT_STYLE_ITALIC } | 区分字体是否为斜体。 | 73| [OH_Drawing_ColorFormat](#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用于描述位图像素的存储格式。 | 74| [OH_Drawing_AlphaFormat](#oh_drawing_alphaformat) { ALPHA_FORMAT_UNKNOWN, ALPHA_FORMAT_OPAQUE, ALPHA_FORMAT_PREMUL, ALPHA_FORMAT_UNPREMUL } | OH_Drawing_AlphaFormat用于描述位图像素的透明度分量。 | 75 76 77### 函数 78 79| 函数名称 | 描述 | 80| ------------------------------------------------------------ | ------------------------------------------------------------ | 81| [OH_Drawing_BitmapCreate](#oh_drawing_bitmapcreate) (void) | 创建一个位图对象。 | 82| [OH_Drawing_BitmapDestroy](#oh_drawing_bitmapdestroy) ([OH_Drawing_Bitmap](#oh_drawing_bitmap) \*) | 销毁位图对象并回收该对象占有内存。 | 83| [OH_Drawing_BitmapBuild](#oh_drawing_bitmapbuild) ([OH_Drawing_Bitmap](#oh_drawing_bitmap) \*, const uint32_t width, const uint32_t height, const [OH_Drawing_BitmapFormat](_o_h___drawing___bitmap_format.md) \*) | 初始化位图对象的宽度和高度,并且为该位图设置像素格式。 | 84| [OH_Drawing_BitmapGetWidth](#oh_drawing_bitmapgetwidth) ([OH_Drawing_Bitmap](#oh_drawing_bitmap) \*) | 获取指定位图的宽度。 | 85| [OH_Drawing_BitmapGetHeight](#oh_drawing_bitmapgetheight) ([OH_Drawing_Bitmap](#oh_drawing_bitmap) \*) | 获取指定位图的高度。 | 86| [OH_Drawing_BitmapGetPixels](#oh_drawing_bitmapgetpixels) ([OH_Drawing_Bitmap](#oh_drawing_bitmap) \*) | 获取指定位图的像素地址,可以通过像素地址获取到位图的像素数据。 | 87| [OH_Drawing_BrushCreate](#oh_drawing_brushcreate) (void) | 创建一个画刷对象。 | 88| [OH_Drawing_BrushDestroy](#oh_drawing_brushdestroy) ([OH_Drawing_Brush](#oh_drawing_brush) \*) | 销毁画刷对象并回收该对象占有的内存。 | 89| [OH_Drawing_BrushIsAntiAlias](#oh_drawing_brushisantialias) (const [OH_Drawing_Brush](#oh_drawing_brush) \*) | 获取画刷是否设置抗锯齿属性,如果为真则说明画刷会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理。 | 90| [OH_Drawing_BrushSetAntiAlias](#oh_drawing_brushsetantialias) ([OH_Drawing_Brush](#oh_drawing_brush) \*, bool) | 设置画刷的抗锯齿属性,设置为真则画刷在绘制图形时会对图形的边缘像素进行半透明的模糊处理。 | 91| [OH_Drawing_BrushGetColor](#oh_drawing_brushgetcolor) (const [OH_Drawing_Brush](#oh_drawing_brush) \*) | 获取画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。 | 92| [OH_Drawing_BrushSetColor](#oh_drawing_brushsetcolor) ([OH_Drawing_Brush](#oh_drawing_brush) \*, uint32_t color) | 设置画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示。 | 93| [OH_Drawing_CanvasCreate](#oh_drawing_canvascreate) (void) | 创建一个画布对象。 | 94| [OH_Drawing_CanvasDestroy](#oh_drawing_canvasdestroy) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*) | 销毁画布对象并回收该对象占有的内存。 | 95| [OH_Drawing_CanvasBind](#oh_drawing_canvasbind) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*, [OH_Drawing_Bitmap](#oh_drawing_bitmap) \*) | 将一个位图对象绑定到画布中,使得画布绘制的内容输出到位图中(即CPU渲染)。 | 96| [OH_Drawing_CanvasAttachPen](#oh_drawing_canvasattachpen) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*, const [OH_Drawing_Pen](#oh_drawing_pen) \*) | 设置画笔给画布,画布将会使用设置画笔的样式和颜色去绘制图形形状的轮廓。 | 97| [OH_Drawing_CanvasDetachPen](#oh_drawing_canvasdetachpen) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*) | 去除掉画布中的画笔,使用后画布将不去绘制图形形状的轮廓。 | 98| [OH_Drawing_CanvasAttachBrush](#oh_drawing_canvasattachbrush) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*, const [OH_Drawing_Brush](#oh_drawing_brush) \*) | 设置画刷给画布,画布将会使用设置的画刷样式和颜色去填充绘制的图形形状。 | 99| [OH_Drawing_CanvasDetachBrush](#oh_drawing_canvasdetachbrush) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*) | 去除掉画布中的画刷,使用后画布将不去填充图形形状。 | 100| [OH_Drawing_CanvasSave](#oh_drawing_canvassave) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*) | 保存当前画布的状态(画布矩阵)到一个栈顶。 | 101| [OH_Drawing_CanvasRestore](#oh_drawing_canvasrestore) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*) | 恢复保存在栈顶的画布状态(画布矩阵)。 | 102| [OH_Drawing_CanvasDrawLine](#oh_drawing_canvasdrawline) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*, float x1, float y1, float x2, float y2) | 画一条直线段。 | 103| [OH_Drawing_CanvasDrawPath](#oh_drawing_canvasdrawpath) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*, const [OH_Drawing_Path](#oh_drawing_path) \*) | 画一个自定义路径。 | 104| [OH_Drawing_CanvasClear](#oh_drawing_canvasclear) ([OH_Drawing_Canvas](#oh_drawing_canvas) \*, uint32_t color) | 使用指定颜色去清空画布。 | 105| [OH_Drawing_ColorSetArgb](#oh_drawing_colorsetargb) (uint32_t alpha, uint32_t red, uint32_t green, uint32_t blue) | 将4个变量(分别描述透明度、红色、绿色和蓝色)转化为一个描述颜色的32位(ARGB)变量。 | 106| [OH_Drawing_CreateFontCollection](#oh_drawing_createfontcollection) (void) | 创建OH_Drawing_FontCollection。 | 107| [OH_Drawing_DestroyFontCollection](#oh_drawing_destroyfontcollection) ([OH_Drawing_FontCollection](#oh_drawing_fontcollection) \*) | 释放被OH_Drawing_FontCollection对象占据的内存。 | 108| [OH_Drawing_PathCreate](#oh_drawing_pathcreate) (void) | 创建一个路径对象。 | 109| [OH_Drawing_PathDestroy](#oh_drawing_pathdestroy) ([OH_Drawing_Path](#oh_drawing_path) \*) | 销毁路径对象并回收该对象占有的内存。 | 110| [OH_Drawing_PathMoveTo](#oh_drawing_pathmoveto) ([OH_Drawing_Path](#oh_drawing_path) \*, float x, float y) | 设置自定义路径的起始点位置。 | 111| [OH_Drawing_PathLineTo](#oh_drawing_pathlineto) ([OH_Drawing_Path](#oh_drawing_path) \*, float x, float y) | 添加一条从路径的最后点位置到目标点位置的线段。 | 112| [OH_Drawing_PathArcTo](#oh_drawing_patharcto) ([OH_Drawing_Path](#oh_drawing_path) \*, float x1, float y1, float x2, float y2, float startDeg, float sweepDeg) | 给路径添加一段弧线,绘制弧线的方式为角度弧,该方式首先会指定一个矩形边框,矩形边框会包裹椭圆, 然后会指定一个起始角度和扫描度数,从起始角度扫描截取的椭圆周长一部分即为绘制的弧线。另外会默认添加一条从路径的最后点位置到弧线起始点位置的线段。 | 113| [OH_Drawing_PathQuadTo](#oh_drawing_pathquadto) ([OH_Drawing_Path](#oh_drawing_path) \*, float ctrlX, float ctrlY, float endX, float endY) | 添加一条从路径最后点位置到目标点位置的二阶贝塞尔圆滑曲线。 | 114| [OH_Drawing_PathCubicTo](#oh_drawing_pathcubicto) ([OH_Drawing_Path](#oh_drawing_path) \*, float ctrlX1, float ctrlY1, float ctrlX2, float ctrlY2, float endX, float endY) | 添加一条从路径最后点位置到目标点位置的三阶贝塞尔圆滑曲线。 | 115| [OH_Drawing_PathClose](#oh_drawing_pathclose) ([OH_Drawing_Path](#oh_drawing_path) \*) | 闭合路径,会添加一条从路径起点位置到最后点位置的线段。 | 116| [OH_Drawing_PathReset](#oh_drawing_pathreset) ([OH_Drawing_Path](#oh_drawing_path) \*) | 重置自定义路径数据。 | 117| [OH_Drawing_PenCreate](#oh_drawing_pencreate) (void) | 创建一个画笔对象。 | 118| [OH_Drawing_PenDestroy](#oh_drawing_pendestroy) ([OH_Drawing_Pen](#oh_drawing_pen) \*) | 销毁画笔对象并回收该对象占有的内存。 | 119| [OH_Drawing_PenIsAntiAlias](#oh_drawing_penisantialias) (const [OH_Drawing_Pen](#oh_drawing_pen) \*) | 获取画笔是否设置抗锯齿属性,如果为真则说明画笔会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理。 | 120| [OH_Drawing_PenSetAntiAlias](#oh_drawing_pensetantialias) ([OH_Drawing_Pen](#oh_drawing_pen) \*, bool) | 设置画笔的抗锯齿属性,设置为真则画笔在绘制图形时会对图形的边缘像素进行半透明的模糊处理。 | 121| [OH_Drawing_PenGetColor](#oh_drawing_pengetcolor) (const [OH_Drawing_Pen](#oh_drawing_pen) \*) | 获取画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示。 | 122| [OH_Drawing_PenSetColor](#oh_drawing_pensetcolor) ([OH_Drawing_Pen](#oh_drawing_pen) \*, uint32_t color) | 设置画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示。 | 123| [OH_Drawing_PenGetWidth](#oh_drawing_pengetwidth) (const [OH_Drawing_Pen](#oh_drawing_pen) \*) | 获取画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度。 | 124| [OH_Drawing_PenSetWidth](#oh_drawing_pensetwidth) ([OH_Drawing_Pen](#oh_drawing_pen) \*, float width) | 设置画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度。 | 125| [OH_Drawing_PenGetMiterLimit](#oh_drawing_pengetmiterlimit) (const [OH_Drawing_Pen](#oh_drawing_pen) \*) | 获取折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角。 | 126| [OH_Drawing_PenSetMiterLimit](#oh_drawing_pensetmiterlimit) ([OH_Drawing_Pen](#oh_drawing_pen) \*, float miter) | 设置折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角。 | 127| [OH_Drawing_PenGetCap](#oh_drawing_pengetcap) (const [OH_Drawing_Pen](#oh_drawing_pen) \*) | 获取画笔笔帽的样式。 | 128| [OH_Drawing_PenSetCap](#oh_drawing_pensetcap) ([OH_Drawing_Pen](#oh_drawing_pen) \*, [OH_Drawing_PenLineCapStyle](#oh_drawing_penlinecapstyle)) | 设置画笔笔帽样式。 | 129| [OH_Drawing_PenGetJoin](#oh_drawing_pengetjoin) (const [OH_Drawing_Pen](#oh_drawing_pen) \*) | 获取画笔绘制折线转角的样式。 | 130| [OH_Drawing_PenSetJoin](#oh_drawing_pensetjoin) ([OH_Drawing_Pen](#oh_drawing_pen) \*, [OH_Drawing_PenLineJoinStyle](#oh_drawing_penlinejoinstyle)) | 设置画笔绘制转角的样式。 | 131| [OH_Drawing_CreateTypographyStyle](#oh_drawing_createtypographystyle) (void) | 创建OH_Drawing_TypographyStyle。 | 132| [OH_Drawing_DestroyTypographyStyle](#oh_drawing_destroytypographystyle) ([OH_Drawing_TypographyStyle](#oh_drawing_typographystyle) \*) | 释放被OH_Drawing_TypographyStyle对象占据的内存。 | 133| [OH_Drawing_SetTypographyTextDirection](#oh_drawing_settypographytextdirection) ([OH_Drawing_TypographyStyle](#oh_drawing_typographystyle) \*, int) | 设置文本方向。 | 134| [OH_Drawing_SetTypographyTextAlign](#oh_drawing_settypographytextalign) ([OH_Drawing_TypographyStyle](#oh_drawing_typographystyle) \*, int) | 设置文本对齐方式。 | 135| [OH_Drawing_SetTypographyTextMaxLines](#oh_drawing_settypographytextmaxlines) ([OH_Drawing_TypographyStyle](#oh_drawing_typographystyle) \*, int) | 设置文本最大行数。 | 136| [OH_Drawing_CreateTextStyle](#oh_drawing_createtextstyle) (void) | 创建OH_Drawing_TextStyle。 | 137| [OH_Drawing_DestroyTextStyle](#oh_drawing_destroytextstyle) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*) | 释放被OH_Drawing_TextStyle对象占据的内存。 | 138| [OH_Drawing_SetTextStyleColor](#oh_drawing_settextstylecolor) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, uint32_t) | 设置文本颜色。 | 139| [OH_Drawing_SetTextStyleFontSize](#oh_drawing_settextstylefontsize) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, double) | 设置字号。 | 140| [OH_Drawing_SetTextStyleFontWeight](#oh_drawing_settextstylefontweight) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, int) | 设置字重。 | 141| [OH_Drawing_SetTextStyleBaseLine](#oh_drawing_settextstylebaseline) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, int) | 设置字体基线位置。 | 142| [OH_Drawing_SetTextStyleDecoration](#oh_drawing_settextstyledecoration) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, int) | 设置装饰。 | 143| [OH_Drawing_SetTextStyleDecorationColor](#oh_drawing_settextstyledecorationcolor) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, uint32_t) | 设置装饰颜色。 | 144| [OH_Drawing_SetTextStyleFontHeight](#oh_drawing_settextstylefontheight) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, double) | 设置字体高度。 | 145| [OH_Drawing_SetTextStyleFontFamilies](#oh_drawing_settextstylefontfamilies) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, int, const char \*fontFamilies[]) | 设置字体类型。 | 146| [OH_Drawing_SetTextStyleFontStyle](#oh_drawing_settextstylefontstyle) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, int) | 设置字体风格。 | 147| [OH_Drawing_SetTextStyleLocale](#oh_drawing_settextstylelocale) ([OH_Drawing_TextStyle](#oh_drawing_textstyle) \*, const char \*) | 设置语言区域。 | 148| [OH_Drawing_CreateTypographyHandler](#oh_drawing_createtypographyhandler) ([OH_Drawing_TypographyStyle](#oh_drawing_typographystyle) \*, [OH_Drawing_FontCollection](#oh_drawing_fontcollection) \*) | 创建指向OH_Drawing_TypographyCreate对象的指针。 | 149| [OH_Drawing_DestroyTypographyHandler](#oh_drawing_destroytypographyhandler) ([OH_Drawing_TypographyCreate](#oh_drawing_typographycreate) \*) | 释放被OH_Drawing_TypographyCreate对象占据的内存。 | 150| [OH_Drawing_TypographyHandlerPushTextStyle](#oh_drawing_typographyhandlerpushtextstyle) ([OH_Drawing_TypographyCreate](#oh_drawing_typographycreate) \*, [OH_Drawing_TextStyle](#oh_drawing_textstyle) \*) | 设置排版风格。 | 151| [OH_Drawing_TypographyHandlerAddText](#oh_drawing_typographyhandleraddtext) ([OH_Drawing_TypographyCreate](#oh_drawing_typographycreate) \*, const char \*) | 设置文本内容。 | 152| [OH_Drawing_TypographyHandlerPopTextStyle](#oh_drawing_typographyhandlerpoptextstyle) ([OH_Drawing_TypographyCreate](#oh_drawing_typographycreate) \*) | 排版弹出。 | 153| [OH_Drawing_CreateTypography](#oh_drawing_createtypography) ([OH_Drawing_TypographyCreate](#oh_drawing_typographycreate) \*) | 创建OH_Drawing_Typography。 | 154| [OH_Drawing_DestroyTypography](#oh_drawing_destroytypography) ([OH_Drawing_Typography](#oh_drawing_typography) \*) | 释放OH_Drawing_Typography对象占据的内存。 | 155| [OH_Drawing_TypographyLayout](#oh_drawing_typographylayout) ([OH_Drawing_Typography](#oh_drawing_typography) \*, double) | 排版布局。 | 156| [OH_Drawing_TypographyPaint](#oh_drawing_typographypaint) ([OH_Drawing_Typography](#oh_drawing_typography) \*, [OH_Drawing_Canvas](#oh_drawing_canvas) \*, double, double) | 显示文本。 | 157| [OH_Drawing_TypographyGetMaxWidth](#oh_drawing_typographygetmaxwidth) ([OH_Drawing_Typography](#oh_drawing_typography) *) | 获取最大宽度。 | 158| [OH_Drawing_TypographyGetHeight](#oh_drawing_typographygetheight) ([OH_Drawing_Typography](#oh_drawing_typography) *) | 获取高度。 | 159| [OH_Drawing_TypographyGetLongestLine](#oh_drawing_typographygetlongestline) ([OH_Drawing_Typography](#oh_drawing_typography) *) | 获取最长行。 | 160| [OH_Drawing_TypographyGetMinIntrinsicWidth](#oh_drawing_typographygetminintrinsicwidth) ([OH_Drawing_Typography](#oh_drawing_typography) *) | 获取最小固有宽度。 | 161| [OH_Drawing_TypographyGetMaxIntrinsicWidth](#oh_drawing_typographygetmaxintrinsicwidth) ([OH_Drawing_Typography](#oh_drawing_typography) *) | 获取最大固有宽度。 | 162| [OH_Drawing_TypographyGetAlphabeticBaseline](#oh_drawing_typographygetalphabeticbaseline)([OH_Drawing_Typography](#oh_drawing_typography) *) | 获取字母文字基线。 | 163| [OH_Drawing_TypographyGetIdeographicBaseline](#oh_drawing_typographygetideographicbaseline) ([OH_Drawing_Typography](#oh_drawing_typography) *) | 获取表意文字基线。 | 164 165 166## 类型定义说明 167 168 169### OH_Drawing_Bitmap 170 171 172``` 173typedef struct OH_Drawing_Bitmap OH_Drawing_Bitmap 174``` 175 176**描述:** 177 178OH_Drawing_Bitmap定义为位图,位图是一块内存,内存中包含了描述一张图片的像素数据 179 180**起始版本:** 181 1828 183 184 185### OH_Drawing_Brush 186 187 188``` 189typedef struct OH_Drawing_Brush OH_Drawing_Brush 190``` 191 192**描述:** 193 194OH_Drawing_Brush定义为画刷,画刷用于描述填充图形的样式和颜色 195 196**起始版本:** 197 1988 199 200 201### OH_Drawing_Canvas 202 203 204``` 205typedef struct OH_Drawing_Canvas OH_Drawing_Canvas 206``` 207 208**描述:** 209 210OH_Drawing_Canvas定义为一块矩形的画布,可以结合画笔和画刷在上面绘制各种形状、图片和文字 211 212**起始版本:** 213 2148 215 216 217### OH_Drawing_FontCollection 218 219 220``` 221typedef struct OH_Drawing_FontCollection OH_Drawing_FontCollection 222``` 223 224**描述:** 225 226OH_Drawing_FontCollection用于加载字体 227 228**起始版本:** 229 2308 231 232 233### OH_Drawing_Path 234 235 236``` 237typedef struct OH_Drawing_Path OH_Drawing_Path 238``` 239 240**描述:** 241 242OH_Drawing_Path定义为路径,路径用于自定义设置各种形状 243 244**起始版本:** 245 2468 247 248 249### OH_Drawing_Pen 250 251 252``` 253typedef struct OH_Drawing_Pen OH_Drawing_Pen 254``` 255 256**描述:** 257 258OH_Drawing_Pen定义为画笔,画笔用于描述绘制图形轮廓的样式和颜色 259 260**起始版本:** 261 2628 263 264 265### OH_Drawing_TextStyle 266 267 268``` 269typedef struct OH_Drawing_TextStyle OH_Drawing_TextStyle 270``` 271 272**描述:** 273 274OH_Drawing_TextStyle用于管理字体颜色、装饰等 275 276**起始版本:** 277 2788 279 280 281### OH_Drawing_Typography 282 283 284``` 285typedef struct OH_Drawing_Typography OH_Drawing_Typography 286``` 287 288**描述:** 289 290OH_Drawing_Typography用于管理排版的布局和显示等 291 292**起始版本:** 293 2948 295 296 297### OH_Drawing_TypographyCreate 298 299 300``` 301typedef struct OH_Drawing_TypographyCreate OH_Drawing_TypographyCreate 302``` 303 304**描述:** 305 306OH_Drawing_TypographyCreate用于创建OH_Drawing_Typography 307 308**起始版本:** 309 3108 311 312 313### OH_Drawing_TypographyStyle 314 315 316``` 317typedef struct OH_Drawing_TypographyStyle OH_Drawing_TypographyStyle 318``` 319 320**描述:** 321 322OH_Drawing_TypographyStyle用于管理排版风格,如文字方向等 323 324**起始版本:** 325 3268 327 328 329## 枚举类型说明 330 331 332### OH_Drawing_AlphaFormat 333 334 335``` 336enum OH_Drawing_AlphaFormat 337``` 338 339**描述:** 340 341OH_Drawing_AlphaFormat用于描述位图像素的透明度分量 342 343| 枚举值 | 描述 | 344| --------------------- | ---------------------------------------- | 345| ALPHA_FORMAT_UNKNOWN | 未知格式 | 346| ALPHA_FORMAT_OPAQUE | 位图无透明度 | 347| ALPHA_FORMAT_PREMUL | 每个像素的颜色组件由透明度分量预先乘以 | 348| ALPHA_FORMAT_UNPREMUL | 每个像素的颜色组件未由透明度分量预先乘以 | 349 350**起始版本:** 351 3528 353 354 355### OH_Drawing_ColorFormat 356 357 358``` 359enum OH_Drawing_ColorFormat 360``` 361 362**描述:** 363 364OH_Drawing_ColorFormat用于描述位图像素的存储格式 365 366| 枚举值 | 描述 | 367| ---------------------- | ------------------------------------------------------------ | 368| COLOR_FORMAT_UNKNOWN | 未知格式. | 369| COLOR_FORMAT_ALPHA_8 | 每个像素用一个8位的量表示,8个位比特位表示透明度 | 370| COLOR_FORMAT_RGB_565 | 每个像素用一个16位的量表示,高位到低位依次是5个比特位表示红,6个比特位表示绿,5个比特位表示蓝 | 371| COLOR_FORMAT_ARGB_4444 | 每个像素用一个16位的量表示,高位到低位依次是4个比特位表示透明度,4个比特位表示红,4个比特位表示绿,4个比特位表示蓝 | 372| COLOR_FORMAT_RGBA_8888 | 每个像素用一个32位的量表示,高位到低位依次是8个比特位表示透明度,8个比特位表示红,8个比特位表示绿,8个比特位表示蓝 | 373| COLOR_FORMAT_BGRA_8888 | 每个像素用一个32位的量表示,高位到低位依次是8个比特位表示蓝,8个比特位表示绿,8个比特位表示红,8个比特位表示透明度 | 374 375**起始版本:** 376 3778 378 379 380### OH_Drawing_FontStyle 381 382 383``` 384enum OH_Drawing_FontStyle 385``` 386 387**描述:** 388 389区分字体是否为斜体 390 391| 枚举值 | 描述 | 392| ----------------- | ------ | 393| FONT_STYLE_NORMAL | 非斜体 | 394| FONT_STYLE_ITALIC | 斜体 | 395 396**起始版本:** 397 3988 399 400 401### OH_Drawing_FontWeight 402 403 404``` 405enum OH_Drawing_FontWeight 406``` 407 408**描述:** 409 410字重 411 412| 枚举值 | 描述 | 413| --------------- | -------------------- | 414| FONT_WEIGHT_100 | 字重为thin | 415| FONT_WEIGHT_200 | 字重为extra-light | 416| FONT_WEIGHT_300 | 字重为light | 417| FONT_WEIGHT_400 | 字重为normal/regular | 418| FONT_WEIGHT_500 | 字重为medium | 419| FONT_WEIGHT_600 | 字重为semi-bold | 420| FONT_WEIGHT_700 | 字重为bold | 421| FONT_WEIGHT_800 | 字重为extra-bold | 422| FONT_WEIGHT_900 | 字重为black | 423 424**起始版本:** 425 4268 427 428 429### OH_Drawing_PenLineCapStyle 430 431 432``` 433enum OH_Drawing_PenLineCapStyle 434``` 435 436**描述:** 437 438枚举集合定义了画笔笔帽的样式,即画笔在绘制线段时,在线段头尾端点的样式 439 440| 枚举值 | 描述 | 441| --------------- | ------------------------------------------------------------ | 442| LINE_FLAT_CAP | 没有笔帽样式,线条头尾端点处横切 | 443| LINE_SQUARE_CAP | 笔帽的样式为方框,线条的头尾端点处多出一个方框,方框宽度和线段一样宽,高度时线段厚度的一半 | 444| LINE_ROUND_CAP | 笔帽的样式为圆弧,线条的头尾端点处多出一个半圆弧,半圆的直径与线段厚度一致 | 445 446**起始版本:** 447 4488 449 450 451### OH_Drawing_PenLineJoinStyle 452 453 454``` 455enum OH_Drawing_PenLineJoinStyle 456``` 457 458**描述:** 459 460枚举集合定义了线条转角的样式,即画笔在绘制折线段时,在折线转角处的样式 461 462| 枚举值 | 描述 | 463| --------------- | ------------------------------------------------------------ | 464| LINE_MITER_JOIN | 转角类型为尖角,如果折线角度比较小,则尖角会很长,需要使用限制值(miter limit)进行限制 | 465| LINE_ROUND_JOIN | 转角类型为圆头 | 466| LINE_BEVEL_JOIN | 转角类型为平头 | 467 468**起始版本:** 469 4708 471 472 473### OH_Drawing_TextAlign 474 475 476``` 477enum OH_Drawing_TextAlign 478``` 479 480**描述:** 481 482文字对齐方式 483 484| 枚举值 | 描述 | 485| ------------------ | ------------------------------------------------------------ | 486| TEXT_ALIGN_LEFT | 左对齐 | 487| TEXT_ALIGN_RIGHT | 右对齐 | 488| TEXT_ALIGN_CENTER | 居中对齐 | 489| TEXT_ALIGN_JUSTIFY | 两端对齐,即紧靠左和右边缘,中间单词空隙由空格填充 最后一行除外 | 490| 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相同。 | 491| 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相同。 | 492 493**起始版本:** 494 4958 496 497 498### OH_Drawing_TextBaseline 499 500 501``` 502enum OH_Drawing_TextBaseline 503``` 504 505**描述:** 506 507基线位置 508 509| 枚举值 | 描述 | 510| ------------------------- | ---------------------------------- | 511| TEXT_BASELINE_ALPHABETIC | 用于表音文字,基线在中间偏下的位置 | 512| TEXT_BASELINE_IDEOGRAPHIC | 用于表意文字,基线位于底部 | 513 514**起始版本:** 515 5168 517 518 519### OH_Drawing_TextDecoration 520 521 522``` 523enum OH_Drawing_TextDecoration 524``` 525 526**描述:** 527 528文本装饰 529 530| 枚举值 | 描述 | 531| ---------------------------- | ------ | 532| TEXT_DECORATION_NONE | 无装饰 | 533| TEXT_DECORATION_UNDERLINE | 下划线 | 534| TEXT_DECORATION_OVERLINE | 上划线 | 535| TEXT_DECORATION_LINE_THROUGH | 删除线 | 536 537**起始版本:** 538 5398 540 541 542### OH_Drawing_TextDirection 543 544 545``` 546enum OH_Drawing_TextDirection 547``` 548 549**描述:** 550 551文字方向 552 553| 枚举值 | 描述 | 554| ------------------ | -------------- | 555| TEXT_DIRECTION_RTL | 方向:从右到左 | 556| TEXT_DIRECTION_LTR | 方向:从左到右 | 557 558**起始版本:** 559 5608 561 562 563## 函数说明 564 565 566### OH_Drawing_BitmapBuild() 567 568 569``` 570void OH_Drawing_BitmapBuild (OH_Drawing_Bitmap * , const uint32_t width, const uint32_t height, const OH_Drawing_BitmapFormat * ) 571``` 572 573**描述:** 574 575设置初始化位图对象的宽度和高度,并且为该位图设置像素格式 576 577@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 578 579**参数:** 580 581| Name | 描述 | 582| ------------------------------------------------------------ | ------------------------------------------------------------ | 583| OH_Drawing_Bitmap | 参数是一个指向位图对象的指针 | 584| width | 参数是位图要初始化设置的宽度 | 585| height | 参数是位图要初始化设置的高度 | 586| [OH_Drawing_BitmapFormat](_o_h___drawing___bitmap_format.md) | 参数是位图要初始化设置的像素格式,包括像素的颜色类型和透明度类型 | 587 588**起始版本:** 589 5908 591 592 593### OH_Drawing_BitmapCreate() 594 595 596``` 597OH_Drawing_Bitmap* OH_Drawing_BitmapCreate (void ) 598``` 599 600**描述:** 601 602创建一个位图对象。 603 604@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 605 606**返回:** 607 608函数会返回一个指针,指针指向创建的位图对象 609 610**起始版本:** 611 6128 613 614 615### OH_Drawing_BitmapDestroy() 616 617 618``` 619void OH_Drawing_BitmapDestroy (OH_Drawing_Bitmap * ) 620``` 621 622**描述:** 623 624销毁位图对象并回收该对象占有内存。 625 626@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 627 628**参数:** 629 630| Name | 描述 | 631| ----------------- | ---------------------------- | 632| OH_Drawing_Bitmap | 参数是一个指向位图对象的指针 | 633 634**起始版本:** 635 6368 637 638 639### OH_Drawing_BitmapGetHeight() 640 641 642``` 643uint32_t OH_Drawing_BitmapGetHeight (OH_Drawing_Bitmap * ) 644``` 645 646**描述:** 647 648获取指定位图的高度 649 650@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 651 652**参数:** 653 654| Name | 描述 | 655| ----------------- | ---------------------------- | 656| OH_Drawing_Bitmap | 参数是一个指向位图对象的指针 | 657 658**返回:** 659 660函数返回位图的高度 661 662**起始版本:** 663 6648 665 666 667### OH_Drawing_BitmapGetPixels() 668 669 670``` 671void* OH_Drawing_BitmapGetPixels (OH_Drawing_Bitmap * ) 672``` 673 674**描述:** 675 676获取指定位图的像素地址,可以通过像素地址获取到位图的像素数据 677 678@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 679 680**参数:** 681 682| Name | 描述 | 683| ----------------- | ---------------------------- | 684| OH_Drawing_Bitmap | 参数是一个指向位图对象的指针 | 685 686**返回:** 687 688函数返回位图的像素地址 689 690**起始版本:** 691 6928 693 694 695### OH_Drawing_BitmapGetWidth() 696 697 698``` 699uint32_t OH_Drawing_BitmapGetWidth (OH_Drawing_Bitmap * ) 700``` 701 702**描述:** 703 704获取指定位图的宽度 705 706@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 707 708**参数:** 709 710| Name | 描述 | 711| ----------------- | ---------------------------- | 712| OH_Drawing_Bitmap | 参数是一个指向位图对象的指针 | 713 714**返回:** 715 716函数返回位图的宽度 717 718**起始版本:** 719 7208 721 722 723### OH_Drawing_BrushCreate() 724 725 726``` 727OH_Drawing_Brush* OH_Drawing_BrushCreate (void ) 728``` 729 730**描述:** 731 732创建一个画刷对象 733 734@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 735 736**返回:** 737 738函数会返回一个指针,指针指向创建的画刷对象 739 740**起始版本:** 741 7428 743 744 745### OH_Drawing_BrushDestroy() 746 747 748``` 749void OH_Drawing_BrushDestroy (OH_Drawing_Brush * ) 750``` 751 752**描述:** 753 754销毁画刷对象并回收该对象占有的内存。 755 756@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 757 758**参数:** 759 760| Name | 描述 | 761| ---------------- | ---------------------------- | 762| OH_Drawing_Brush | 参数是一个指向画刷对象的指针 | 763 764**起始版本:** 765 7668 767 768 769### OH_Drawing_BrushGetColor() 770 771 772``` 773uint32_t OH_Drawing_BrushGetColor (const OH_Drawing_Brush * ) 774``` 775 776**描述:** 777 778获取画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示 779 780@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 781 782**参数:** 783 784| Name | 描述 | 785| ---------------- | ---------------------------- | 786| OH_Drawing_Brush | 参数是一个指向画刷对象的指针 | 787 788**返回:** 789 790函数返回一个描述颜色的32位(ARGB)变量 791 792**起始版本:** 793 7948 795 796 797### OH_Drawing_BrushIsAntiAlias() 798 799 800``` 801bool OH_Drawing_BrushIsAntiAlias (const OH_Drawing_Brush * ) 802``` 803 804**描述:** 805 806获取画刷是否设置抗锯齿属性,如果为真则说明画刷会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理 807 808@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 809 810**参数:** 811 812| Name | 描述 | 813| ---------------- | ---------------------------- | 814| OH_Drawing_Brush | 参数是一个指向画刷对象的指针 | 815 816**返回:** 817 818函数返回画刷对象是否设置抗锯齿属性,返回真则设置了抗锯齿,返回假则没有设置抗锯齿 819 820**起始版本:** 821 8228 823 824 825### OH_Drawing_BrushSetAntiAlias() 826 827 828``` 829void OH_Drawing_BrushSetAntiAlias (OH_Drawing_Brush * , bool ) 830``` 831 832**描述:** 833 834设置画刷的抗锯齿属性,设置为真则画刷在绘制图形时会对图形的边缘像素进行半透明的模糊处理 835 836@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 837 838**参数:** 839 840| Name | 描述 | 841| ---------------- | -------------------------------------- | 842| OH_Drawing_Brush | 参数是一个指向画刷对象的指针 | 843| bool | 参数真为抗锯齿,参数假则不做抗锯齿处理 | 844 845**起始版本:** 846 8478 848 849 850### OH_Drawing_BrushSetColor() 851 852 853``` 854void OH_Drawing_BrushSetColor (OH_Drawing_Brush * , uint32_t color ) 855``` 856 857**描述:** 858 859设置画刷的颜色属性,颜色属性描述了画刷填充图形时使用的颜色,用一个32位(ARGB)的变量表示 860 861@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 862 863**参数:** 864 865| Name | 描述 | 866| ---------------- | ------------------------------------ | 867| OH_Drawing_Brush | 参数是一个指向画刷对象的指针 | 868| color | 参数是一个描述颜色的32位(ARGB)变量 | 869 870**起始版本:** 871 8728 873 874 875### OH_Drawing_CanvasAttachBrush() 876 877 878``` 879void OH_Drawing_CanvasAttachBrush (OH_Drawing_Canvas * , const OH_Drawing_Brush * ) 880``` 881 882**描述:** 883 884设置画刷给画布,画布将会使用设置的画刷样式和颜色去填充绘制的图形形状 885 886@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 887 888**参数:** 889 890| Name | 描述 | 891| ----------------- | ---------------------------- | 892| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 893| OH_Drawing_Brush | 参数为一个指向画刷对象的指针 | 894 895**起始版本:** 896 8978 898 899 900### OH_Drawing_CanvasAttachPen() 901 902 903``` 904void OH_Drawing_CanvasAttachPen (OH_Drawing_Canvas * , const OH_Drawing_Pen * ) 905``` 906 907**描述:** 908 909设置画笔给画布,画布将会使用设置画笔的样式和颜色去绘制图形形状的轮廓 910 911@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 912 913**参数:** 914 915| Name | 描述 | 916| ----------------- | ---------------------------- | 917| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 918| OH_Drawing_Pen | 参数为一个指向画笔对象的指针 | 919 920**起始版本:** 921 9228 923 924 925### OH_Drawing_CanvasBind() 926 927 928``` 929void OH_Drawing_CanvasBind (OH_Drawing_Canvas * , OH_Drawing_Bitmap * ) 930``` 931 932**描述:** 933 934将一个位图对象绑定到画布中,使得画布绘制的内容输出到位图中(即CPU渲染) 935 936@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 937 938**参数:** 939 940| Name | 描述 | 941| ----------------- | ---------------------------- | 942| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 943| OH_Drawing_Bitmap | 参数为一个指向位图对象的指针 | 944 945**起始版本:** 946 9478 948 949 950### OH_Drawing_CanvasClear() 951 952 953``` 954void OH_Drawing_CanvasClear (OH_Drawing_Canvas * , uint32_t color ) 955``` 956 957**描述:** 958 959使用指定颜色去清空画布 960 961@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 962 963**参数:** 964 965| Name | 描述 | 966| ----------------- | ------------------------------------ | 967| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 968| color | 参数为一个描述颜色的32位(ARGB)变量 | 969 970**起始版本:** 971 9728 973 974 975### OH_Drawing_CanvasCreate() 976 977 978``` 979OH_Drawing_Canvas* OH_Drawing_CanvasCreate (void ) 980``` 981 982**描述:** 983 984创建一个画布对象 985 986@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 987 988**返回:** 989 990函数会返回一个指针,指针指向创建的画布对象 991 992**起始版本:** 993 9948 995 996 997### OH_Drawing_CanvasDestroy() 998 999 1000``` 1001void OH_Drawing_CanvasDestroy (OH_Drawing_Canvas * ) 1002``` 1003 1004**描述:** 1005 1006销毁画布对象并回收该对象占有的内存 1007 1008@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1009 1010**参数:** 1011 1012| Name | 描述 | 1013| ----------------- | ---------------------------- | 1014| OH_Drawing_Canvas | 参数是一个指向画布对象的指针 | 1015 1016**起始版本:** 1017 10188 1019 1020 1021### OH_Drawing_CanvasDetachBrush() 1022 1023 1024``` 1025void OH_Drawing_CanvasDetachBrush (OH_Drawing_Canvas * ) 1026``` 1027 1028**描述:** 1029 1030去除掉画布中的画刷,使用后画布将不去填充图形形状 1031 1032@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1033 1034**参数:** 1035 1036| Name | 描述 | 1037| ----------------- | ---------------------------- | 1038| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 1039 1040**起始版本:** 1041 10428 1043 1044 1045### OH_Drawing_CanvasDetachPen() 1046 1047 1048``` 1049void OH_Drawing_CanvasDetachPen (OH_Drawing_Canvas * ) 1050``` 1051 1052**描述:** 1053 1054去除掉画布中的画笔,使用后画布将不去绘制图形形状的轮廓 1055 1056@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1057 1058**参数:** 1059 1060| Name | 描述 | 1061| ----------------- | ---------------------------- | 1062| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 1063 1064**起始版本:** 1065 10668 1067 1068 1069### OH_Drawing_CanvasDrawLine() 1070 1071 1072``` 1073void OH_Drawing_CanvasDrawLine (OH_Drawing_Canvas * , float x1, float y1, float x2, float y2 ) 1074``` 1075 1076**描述:** 1077 1078画一条直线段 1079 1080@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1081 1082**参数:** 1083 1084| Name | 描述 | 1085| ----------------- | ---------------------------- | 1086| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 1087| x1 | 参数为线段起始点的横坐标 | 1088| y1 | 参数为线段起始点的纵坐标 | 1089| x2 | 参数为线段结束点的横坐标 | 1090| y2 | 参数为线段结束点的纵坐标 | 1091 1092**起始版本:** 1093 10948 1095 1096 1097### OH_Drawing_CanvasDrawPath() 1098 1099 1100``` 1101void OH_Drawing_CanvasDrawPath (OH_Drawing_Canvas * , const OH_Drawing_Path * ) 1102``` 1103 1104**描述:** 1105 1106画一个自定义路径 1107 1108@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1109 1110**参数:** 1111 1112| Name | 描述 | 1113| ----------------- | ---------------------------- | 1114| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 1115| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1116 1117**起始版本:** 1118 11198 1120 1121 1122### OH_Drawing_CanvasRestore() 1123 1124 1125``` 1126void OH_Drawing_CanvasRestore (OH_Drawing_Canvas * ) 1127``` 1128 1129**描述:** 1130 1131恢复保存在栈顶的画布状态(画布矩阵) 1132 1133@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1134 1135**参数:** 1136 1137| Name | 描述 | 1138| ----------------- | ---------------------------- | 1139| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 1140 1141**起始版本:** 1142 11438 1144 1145 1146### OH_Drawing_CanvasSave() 1147 1148 1149``` 1150void OH_Drawing_CanvasSave (OH_Drawing_Canvas * ) 1151``` 1152 1153**描述:** 1154 1155保存当前画布的状态(画布矩阵)到一个栈顶 1156 1157@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1158 1159**参数:** 1160 1161| Name | 描述 | 1162| ----------------- | ---------------------------- | 1163| OH_Drawing_Canvas | 参数为一个指向画布对象的指针 | 1164 1165**起始版本:** 1166 11678 1168 1169 1170### OH_Drawing_ColorSetArgb() 1171 1172 1173``` 1174uint32_t OH_Drawing_ColorSetArgb (uint32_t alpha, uint32_t red, uint32_t green, uint32_t blue ) 1175``` 1176 1177**描述:** 1178 1179将4个变量(分别描述透明度、红色、绿色和蓝色)转化为一个描述颜色的32位(ARGB)变量 1180 1181@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1182 1183**参数:** 1184 1185| Name | 描述 | 1186| ----- | ----------------------------------------------- | 1187| alpha | 参数为一个描述透明度的变量, 变量范围是0x00~0xFF | 1188| red | 参数为一个描述红色的变量, 变量范围是0x00~0xFF | 1189| green | 参数为一个描述绿色的变量, 变量范围是0x00~0xFF | 1190| blue | 参数为一个描述蓝色的变量, 变量范围是0x00~0xFF | 1191 1192**返回:** 1193 1194函数返回一个描述颜色的32位(ARGB)变量 1195 1196**起始版本:** 1197 11988 1199 1200 1201### OH_Drawing_CreateFontCollection() 1202 1203 1204``` 1205OH_Drawing_FontCollection* OH_Drawing_CreateFontCollection (void ) 1206``` 1207 1208**描述:** 1209 1210创建OH_Drawing_FontCollection 1211 1212@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1213 1214**返回:** 1215 1216指向创建的OH_Drawing_FontCollection对象的指针 1217 1218**起始版本:** 1219 12208 1221 1222 1223### OH_Drawing_CreateTextStyle() 1224 1225 1226``` 1227OH_Drawing_TextStyle* OH_Drawing_CreateTextStyle (void ) 1228``` 1229 1230**描述:** 1231 1232创建OH_Drawing_TextStyle 1233 1234@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1235 1236**返回:** 1237 1238指向创建的OH_Drawing_TextStyle对象的指针 1239 1240**起始版本:** 1241 12428 1243 1244 1245### OH_Drawing_CreateTypography() 1246 1247 1248``` 1249OH_Drawing_Typography* OH_Drawing_CreateTypography (OH_Drawing_TypographyCreate * ) 1250``` 1251 1252**描述:** 1253 1254创建OH_Drawing_Typography 1255 1256@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1257 1258**参数:** 1259 1260| Name | 描述 | 1261| --------------------------- | ----------------------------------------- | 1262| OH_Drawing_TypographyCreate | 指向OH_Drawing_TypographyCreate对象的指针 | 1263 1264**返回:** 1265 1266指向OH_Drawing_Typography对象的指针 1267 1268**起始版本:** 1269 12708 1271 1272 1273### OH_Drawing_CreateTypographyHandler() 1274 1275 1276``` 1277OH_Drawing_TypographyCreate* OH_Drawing_CreateTypographyHandler (OH_Drawing_TypographyStyle * , OH_Drawing_FontCollection * ) 1278``` 1279 1280**描述:** 1281 1282创建指向OH_Drawing_TypographyCreate对象的指针 1283 1284@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1285 1286**参数:** 1287 1288| Name | 描述 | 1289| -------------------------- | ------------------------------------ | 1290| OH_Drawing_TypographyStyle | 指向OH_Drawing_TypographyStyle的指针 | 1291| OH_Drawing_FontCollection | 指向OH_Drawing_FontCollection的指针 | 1292 1293**返回:** 1294 1295指向新创建的OH_Drawing_TypographyCreate对象的指针 1296 1297**起始版本:** 1298 12998 1300 1301 1302### OH_Drawing_CreateTypographyStyle() 1303 1304 1305``` 1306OH_Drawing_TypographyStyle* OH_Drawing_CreateTypographyStyle (void ) 1307``` 1308 1309**描述:** 1310 1311创建OH_Drawing_TypographyStyle 1312 1313@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1314 1315**返回:** 1316 1317指向创建的OH_Drawing_TypographyStyle对象的指针 1318 1319**起始版本:** 1320 13218 1322 1323 1324### OH_Drawing_DestroyFontCollection() 1325 1326 1327``` 1328void OH_Drawing_DestroyFontCollection (OH_Drawing_FontCollection * ) 1329``` 1330 1331**描述:** 1332 1333释放被OH_Drawing_FontCollection对象占据的内存 1334 1335@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1336 1337**参数:** 1338 1339| Name | 描述 | 1340| ------------------------- | --------------------------------------- | 1341| OH_Drawing_FontCollection | 指向OH_Drawing_FontCollection对象的指针 | 1342 1343**起始版本:** 1344 13458 1346 1347 1348### OH_Drawing_DestroyTextStyle() 1349 1350 1351``` 1352void OH_Drawing_DestroyTextStyle (OH_Drawing_TextStyle * ) 1353``` 1354 1355**描述:** 1356 1357释放被OH_Drawing_TextStyle对象占据的内存 1358 1359@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1360 1361**参数:** 1362 1363| Name | 描述 | 1364| -------------------- | ---------------------------------- | 1365| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 1366 1367**起始版本:** 1368 13698 1370 1371 1372### OH_Drawing_DestroyTypography() 1373 1374 1375``` 1376void OH_Drawing_DestroyTypography (OH_Drawing_Typography * ) 1377``` 1378 1379**描述:** 1380 1381释放OH_Drawing_Typography对象占据的内存 1382 1383@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1384 1385**参数:** 1386 1387| Name | 描述 | 1388| --------------------- | ----------------------------------- | 1389| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 1390 1391**起始版本:** 1392 13938 1394 1395 1396### OH_Drawing_DestroyTypographyHandler() 1397 1398 1399``` 1400void OH_Drawing_DestroyTypographyHandler (OH_Drawing_TypographyCreate * ) 1401``` 1402 1403**描述:** 1404 1405释放被OH_Drawing_TypographyCreate对象占据的内存 1406 1407@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1408 1409**参数:** 1410 1411| Name | 描述 | 1412| --------------------------- | ----------------------------------------- | 1413| OH_Drawing_TypographyCreate | 指向OH_Drawing_TypographyCreate对象的指针 | 1414 1415**起始版本:** 1416 14178 1418 1419 1420### OH_Drawing_DestroyTypographyStyle() 1421 1422 1423``` 1424void OH_Drawing_DestroyTypographyStyle (OH_Drawing_TypographyStyle * ) 1425``` 1426 1427**描述:** 1428 1429释放被OH_Drawing_TypographyStyle对象占据的内存 1430 1431@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1432 1433**参数:** 1434 1435| Name | 描述 | 1436| -------------------------- | ---------------------------------------- | 1437| OH_Drawing_TypographyStyle | 指向OH_Drawing_TypographyStyle对象的指针 | 1438 1439**起始版本:** 1440 14418 1442 1443 1444### OH_Drawing_PathArcTo() 1445 1446 1447``` 1448void OH_Drawing_PathArcTo (OH_Drawing_Path * , float x1, float y1, float x2, float y2, float startDeg, float sweepDeg ) 1449``` 1450 1451**描述:** 1452 1453给路径添加一段弧线,绘制弧线的方式为角度弧,该方式首先会指定一个矩形边框,矩形边框会包裹椭圆, 然后会指定一个起始角度和扫描度数,从起始角度扫描截取的椭圆周长一部分即为绘制的弧线。另外会默认添加一条从路径的最后点位置到弧线起始点位置的线段 1454 1455@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1456 1457**参数:** 1458 1459| Name | 描述 | 1460| --------------- | ---------------------------------------- | 1461| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1462| x1 | 参数为包围椭圆的矩形左上角点位置的横坐标 | 1463| y1 | 参数为包围椭圆的矩形左上角点位置的纵坐标 | 1464| x2 | 参数为包围椭圆的矩形右下角点位置的横坐标 | 1465| y2 | 参数为包围椭圆的矩形右下角点位置的纵坐标 | 1466| startDeg | 参数为起始的角度 | 1467| sweepDeg | 参数为扫描的度数 | 1468 1469**起始版本:** 1470 14718 1472 1473 1474### OH_Drawing_PathClose() 1475 1476 1477``` 1478void OH_Drawing_PathClose (OH_Drawing_Path * ) 1479``` 1480 1481**描述:** 1482 1483函数用于闭合路径,会添加一条从路径起点位置到最后点位置的线段 1484 1485@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1486 1487**参数:** 1488 1489| Name | 描述 | 1490| --------------- | ---------------------------- | 1491| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1492 1493**起始版本:** 1494 14958 1496 1497 1498### OH_Drawing_PathCreate() 1499 1500 1501``` 1502OH_Drawing_Path* OH_Drawing_PathCreate (void ) 1503``` 1504 1505**描述:** 1506 1507创建一个路径对象 1508 1509@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1510 1511**返回:** 1512 1513函数会返回一个指针,指针指向创建的路径对象 1514 1515**起始版本:** 1516 15178 1518 1519 1520### OH_Drawing_PathCubicTo() 1521 1522 1523``` 1524void OH_Drawing_PathCubicTo (OH_Drawing_Path * , float ctrlX1, float ctrlY1, float ctrlX2, float ctrlY2, float endX, float endY ) 1525``` 1526 1527**描述:** 1528 1529添加一条从路径最后点位置到目标点位置的三阶贝塞尔圆滑曲线 1530 1531@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1532 1533**参数:** 1534 1535| Name | 描述 | 1536| --------------- | ------------------------------ | 1537| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1538| ctrlX1 | 参数为第一个控制点位置的横坐标 | 1539| ctrlY1 | 参数为第一个控制点位置的纵坐标 | 1540| ctrlX2 | 参数为第二个控制点位置的横坐标 | 1541| ctrlY2 | 参数为第二个控制点位置的纵坐标 | 1542| endX | 参数为目标点位置的横坐标 | 1543| endY | 参数为目标点位置的纵坐标 | 1544 1545**起始版本:** 1546 15478 1548 1549 1550### OH_Drawing_PathDestroy() 1551 1552 1553``` 1554void OH_Drawing_PathDestroy (OH_Drawing_Path * ) 1555``` 1556 1557**描述:** 1558 1559销毁路径对象并回收该对象占有的内存 1560 1561@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1562 1563**参数:** 1564 1565| Name | 描述 | 1566| --------------- | ---------------------------- | 1567| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1568 1569**起始版本:** 1570 15718 1572 1573 1574### OH_Drawing_PathLineTo() 1575 1576 1577``` 1578void OH_Drawing_PathLineTo (OH_Drawing_Path * , float x, float y ) 1579``` 1580 1581**描述:** 1582 1583添加一条从路径的最后点位置到目标点位置的线段 1584 1585@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1586 1587**参数:** 1588 1589| Name | 描述 | 1590| --------------- | ---------------------------- | 1591| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1592| x | 参数为目标点的横坐标 | 1593| y | 参数为目标点的纵坐标 | 1594 1595**起始版本:** 1596 15978 1598 1599 1600### OH_Drawing_PathMoveTo() 1601 1602 1603``` 1604void OH_Drawing_PathMoveTo (OH_Drawing_Path * , float x, float y ) 1605``` 1606 1607**描述:** 1608 1609设置自定义路径的起始点位置 1610 1611@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1612 1613**参数:** 1614 1615| Name | 描述 | 1616| --------------- | ---------------------------- | 1617| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1618| x | 参数为起始点的横坐标 | 1619| y | 参数为起始点的纵坐标 | 1620 1621**起始版本:** 1622 16238 1624 1625 1626### OH_Drawing_PathQuadTo() 1627 1628 1629``` 1630void OH_Drawing_PathQuadTo (OH_Drawing_Path * , float ctrlX, float ctrlY, float endX, float endY ) 1631``` 1632 1633**描述:** 1634 1635添加一条从路径最后点位置到目标点位置的二阶贝塞尔圆滑曲线 1636 1637@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1638 1639**参数:** 1640 1641| Name | 描述 | 1642| --------------- | ---------------------------- | 1643| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1644| ctrlX | 参数为控制点位置的横坐标 | 1645| ctrlY | 参数为控制点位置的纵坐标 | 1646| endX | 参数为目标点位置的横坐标 | 1647| endY | 参数为目标点位置的纵坐标 | 1648 1649**起始版本:** 1650 16518 1652 1653 1654### OH_Drawing_PathReset() 1655 1656 1657``` 1658void OH_Drawing_PathReset (OH_Drawing_Path * ) 1659``` 1660 1661**描述:** 1662 1663重置自定义路径数据 1664 1665@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1666 1667**参数:** 1668 1669| Name | 描述 | 1670| --------------- | ---------------------------- | 1671| OH_Drawing_Path | 参数为一个指向路径对象的指针 | 1672 1673**起始版本:** 1674 16758 1676 1677 1678### OH_Drawing_PenCreate() 1679 1680 1681``` 1682OH_Drawing_Pen* OH_Drawing_PenCreate (void ) 1683``` 1684 1685**描述:** 1686 1687创建一个画笔对象 1688 1689@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1690 1691**返回:** 1692 1693函数会返回一个指针,指针指向创建的画笔对象 1694 1695**起始版本:** 1696 16978 1698 1699 1700### OH_Drawing_PenDestroy() 1701 1702 1703``` 1704void OH_Drawing_PenDestroy (OH_Drawing_Pen * ) 1705``` 1706 1707**描述:** 1708 1709销毁画笔对象并回收该对象占有的内存 1710 1711@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1712 1713**参数:** 1714 1715| Name | 描述 | 1716| -------------- | ---------------------------- | 1717| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1718 1719**起始版本:** 1720 17218 1722 1723 1724### OH_Drawing_PenGetCap() 1725 1726 1727``` 1728OH_Drawing_PenLineCapStyle OH_Drawing_PenGetCap (const OH_Drawing_Pen * ) 1729``` 1730 1731**描述:** 1732 1733获取画笔笔帽的样式 1734 1735@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1736 1737**参数:** 1738 1739| Name | 描述 | 1740| -------------- | ---------------------------- | 1741| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1742 1743**返回:** 1744 1745函数返回画笔笔帽样式 1746 1747**起始版本:** 1748 17498 1750 1751 1752### OH_Drawing_PenGetColor() 1753 1754 1755``` 1756uint32_t OH_Drawing_PenGetColor (const OH_Drawing_Pen * ) 1757``` 1758 1759**描述:** 1760 1761获取画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示 1762 1763@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1764 1765**参数:** 1766 1767| Name | 描述 | 1768| -------------- | ---------------------------- | 1769| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1770 1771**返回:** 1772 1773函数返回一个描述颜色的32位(ARGB)变量 1774 1775**起始版本:** 1776 17778 1778 1779 1780### OH_Drawing_PenGetJoin() 1781 1782 1783``` 1784OH_Drawing_PenLineJoinStyle OH_Drawing_PenGetJoin (const OH_Drawing_Pen * ) 1785``` 1786 1787**描述:** 1788 1789获取画笔绘制折线转角的样式 1790 1791@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1792 1793**参数:** 1794 1795| Name | 描述 | 1796| -------------- | ---------------------------- | 1797| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1798 1799**返回:** 1800 1801函数返回折线转角的样式 1802 1803**起始版本:** 1804 18058 1806 1807 1808### OH_Drawing_PenGetMiterLimit() 1809 1810 1811``` 1812float OH_Drawing_PenGetMiterLimit (const OH_Drawing_Pen * ) 1813``` 1814 1815**描述:** 1816 1817获取折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角 1818 1819@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1820 1821**参数:** 1822 1823| Name | 描述 | 1824| -------------- | ---------------------------- | 1825| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1826 1827**返回:** 1828 1829函数返回尖角的限制值 1830 1831**起始版本:** 1832 18338 1834 1835 1836### OH_Drawing_PenGetWidth() 1837 1838 1839``` 1840float OH_Drawing_PenGetWidth (const OH_Drawing_Pen * ) 1841``` 1842 1843**描述:** 1844 1845获取画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度 1846 1847@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1848 1849**参数:** 1850 1851| Name | 描述 | 1852| -------------- | ---------------------------- | 1853| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1854 1855**返回:** 1856 1857函数返回画笔的厚度 1858 1859**起始版本:** 1860 18618 1862 1863 1864### OH_Drawing_PenIsAntiAlias() 1865 1866 1867``` 1868bool OH_Drawing_PenIsAntiAlias (const OH_Drawing_Pen * ) 1869``` 1870 1871**描述:** 1872 1873获取画笔是否设置抗锯齿属性,如果为真则说明画笔会启用抗锯齿功能,在绘制图形时会对图形的边缘像素进行半透明的模糊处理 1874 1875@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1876 1877**参数:** 1878 1879| Name | 描述 | 1880| -------------- | ---------------------------- | 1881| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1882 1883**返回:** 1884 1885函数返回画笔对象是否设置抗锯齿属性,返回真则设置了抗锯齿,返回假则没有设置抗锯齿 1886 1887**起始版本:** 1888 18898 1890 1891 1892### OH_Drawing_PenSetAntiAlias() 1893 1894 1895``` 1896void OH_Drawing_PenSetAntiAlias (OH_Drawing_Pen * , bool ) 1897``` 1898 1899**描述:** 1900 1901设置画笔的抗锯齿属性,设置为真则画笔在绘制图形时会对图形的边缘像素进行半透明的模糊处理 1902 1903@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1904 1905**参数:** 1906 1907| Name | 描述 | 1908| -------------- | -------------------------------------- | 1909| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1910| bool | 参数真为抗锯齿,参数假则不做抗锯齿处理 | 1911 1912**起始版本:** 1913 19148 1915 1916 1917### OH_Drawing_PenSetCap() 1918 1919 1920``` 1921void OH_Drawing_PenSetCap (OH_Drawing_Pen * , OH_Drawing_PenLineCapStyle ) 1922``` 1923 1924**描述:** 1925 1926设置画笔笔帽样式 1927 1928@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1929 1930**参数:** 1931 1932| Name | 描述 | 1933| -------------------------- | -------------------------------- | 1934| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1935| OH_Drawing_PenLineCapStyle | 参数是一个描述画笔笔帽样式的变量 | 1936 1937**起始版本:** 1938 19398 1940 1941 1942### OH_Drawing_PenSetColor() 1943 1944 1945``` 1946void OH_Drawing_PenSetColor (OH_Drawing_Pen * , uint32_t color ) 1947``` 1948 1949**描述:** 1950 1951设置画笔的颜色属性,颜色属性描述了画笔绘制图形轮廓时使用的颜色,用一个32位(ARGB)的变量表示 1952 1953@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1954 1955**参数:** 1956 1957| Name | 描述 | 1958| -------------- | ------------------------------------ | 1959| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1960| color | 参数是一个描述颜色的32位(ARGB)变量 | 1961 1962**起始版本:** 1963 19648 1965 1966 1967### OH_Drawing_PenSetJoin() 1968 1969 1970``` 1971void OH_Drawing_PenSetJoin (OH_Drawing_Pen * , OH_Drawing_PenLineJoinStyle ) 1972``` 1973 1974**描述:** 1975 1976设置画笔绘制转角的样式 1977 1978@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 1979 1980**参数:** 1981 1982| Name | 描述 | 1983| --------------------------- | -------------------------------- | 1984| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 1985| OH_Drawing_PenLineJoinStyle | 参数值一个描述折线转角样式的变量 | 1986 1987**起始版本:** 1988 19898 1990 1991 1992### OH_Drawing_PenSetMiterLimit() 1993 1994 1995``` 1996void OH_Drawing_PenSetMiterLimit (OH_Drawing_Pen * , float miter ) 1997``` 1998 1999**描述:** 2000 2001设置折线尖角的限制值,当画笔绘制一条折线,转角类型设置为尖角时,那么此时该属性用于限制出现尖角的长度范围,如果超出则平角显示,不超出依然为尖角 2002 2003@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2004 2005**参数:** 2006 2007| Name | 描述 | 2008| -------------- | ------------------------------ | 2009| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 2010| miter | 参数是一个描述尖角限制值的变量 | 2011 2012**起始版本:** 2013 20148 2015 2016 2017### OH_Drawing_PenSetWidth() 2018 2019 2020``` 2021void OH_Drawing_PenSetWidth (OH_Drawing_Pen * , float width ) 2022``` 2023 2024**描述:** 2025 2026设置画笔的厚度属性,厚度属性描述了画笔绘制图形轮廓的宽度 2027 2028@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2029 2030**参数:** 2031 2032| Name | 描述 | 2033| -------------- | ---------------------------- | 2034| OH_Drawing_Pen | 参数是一个指向画笔对象的指针 | 2035| width | 参数是一个描述画笔厚度的变量 | 2036 2037**起始版本:** 2038 20398 2040 2041 2042### OH_Drawing_SetTextStyleBaseLine() 2043 2044 2045``` 2046void OH_Drawing_SetTextStyleBaseLine (OH_Drawing_TextStyle * , int ) 2047``` 2048 2049**描述:** 2050 2051设置字体基线位置 2052 2053@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2054 2055**参数:** 2056 2057| Name | 描述 | 2058| -------------------- | ---------------------------------- | 2059| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2060| int | OH_Drawing_TextBaseline枚举类型 | 2061 2062**起始版本:** 2063 20648 2065 2066 2067### OH_Drawing_SetTextStyleColor() 2068 2069 2070``` 2071void OH_Drawing_SetTextStyleColor (OH_Drawing_TextStyle * , uint32_t ) 2072``` 2073 2074**描述:** 2075 2076设置文本颜色 2077 2078@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2079 2080**参数:** 2081 2082| Name | 描述 | 2083| -------------------- | ---------------------------------- | 2084| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2085| uint32_t | 颜色 | 2086 2087**起始版本:** 2088 20898 2090 2091 2092### OH_Drawing_SetTextStyleDecoration() 2093 2094 2095``` 2096void OH_Drawing_SetTextStyleDecoration (OH_Drawing_TextStyle * , int ) 2097``` 2098 2099**描述:** 2100 2101设置装饰 2102 2103@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2104 2105**参数:** 2106 2107| Name | 描述 | 2108| -------------------- | ---------------------------------- | 2109| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2110| int | OH_Drawing_TextDecoration枚举类型 | 2111 2112**起始版本:** 2113 21148 2115 2116 2117### OH_Drawing_SetTextStyleDecorationColor() 2118 2119 2120``` 2121void OH_Drawing_SetTextStyleDecorationColor (OH_Drawing_TextStyle * , uint32_t ) 2122``` 2123 2124**描述:** 2125 2126设置装饰颜色 2127 2128@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2129 2130**参数:** 2131 2132| Name | 描述 | 2133| -------------------- | ---------------------------------- | 2134| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2135| uint32_t | 颜色 | 2136 2137**起始版本:** 2138 21398 2140 2141 2142### OH_Drawing_SetTextStyleFontFamilies() 2143 2144 2145``` 2146void OH_Drawing_SetTextStyleFontFamilies (OH_Drawing_TextStyle * , int , const char * fontFamilies[] ) 2147``` 2148 2149**描述:** 2150 2151设置字体类型 2152 2153@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2154 2155**参数:** 2156 2157| Name | 描述 | 2158| -------------------- | ---------------------------------- | 2159| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2160| int | 字体名称数量 | 2161| fontFamilies | 指向字体类型的指针数组 | 2162 2163**起始版本:** 2164 21658 2166 2167 2168### OH_Drawing_SetTextStyleFontHeight() 2169 2170 2171``` 2172void OH_Drawing_SetTextStyleFontHeight (OH_Drawing_TextStyle * , double ) 2173``` 2174 2175**描述:** 2176 2177设置字体高度 2178 2179@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2180 2181**参数:** 2182 2183| Name | 描述 | 2184| -------------------- | ---------------------------------- | 2185| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2186| double | 字体高度 | 2187 2188**起始版本:** 2189 21908 2191 2192 2193### OH_Drawing_SetTextStyleFontSize() 2194 2195 2196``` 2197void OH_Drawing_SetTextStyleFontSize (OH_Drawing_TextStyle * , double ) 2198``` 2199 2200**描述:** 2201 2202设置字号 2203 2204@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2205 2206**参数:** 2207 2208| Name | 描述 | 2209| -------------------- | ---------------------------------- | 2210| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2211| double | 字号 | 2212 2213**起始版本:** 2214 22158 2216 2217 2218### OH_Drawing_SetTextStyleFontStyle() 2219 2220 2221``` 2222void OH_Drawing_SetTextStyleFontStyle (OH_Drawing_TextStyle * , int ) 2223``` 2224 2225**描述:** 2226 2227设置字体风格 2228 2229@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2230 2231**参数:** 2232 2233| Name | 描述 | 2234| -------------------- | ---------------------------------- | 2235| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2236| int | OH_Drawing_FontStyle枚举类型 | 2237 2238**起始版本:** 2239 22408 2241 2242 2243### OH_Drawing_SetTextStyleFontWeight() 2244 2245 2246``` 2247void OH_Drawing_SetTextStyleFontWeight (OH_Drawing_TextStyle * , int ) 2248``` 2249 2250**描述:** 2251 2252设置字重 2253 2254@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2255 2256**参数:** 2257 2258| Name | 描述 | 2259| -------------------- | ---------------------------------- | 2260| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2261| int | OH_Drawing_FontWeight枚举类型 | 2262 2263**起始版本:** 2264 22658 2266 2267 2268### OH_Drawing_SetTextStyleLocale() 2269 2270 2271``` 2272void OH_Drawing_SetTextStyleLocale (OH_Drawing_TextStyle * , const char * ) 2273``` 2274 2275**描述:** 2276 2277设置语言区域 2278 2279@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2280 2281**参数:** 2282 2283| Name | 描述 | 2284| -------------------- | ---------------------------------- | 2285| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2286| char | 语言区域,数据类型为指向char的指针 | 2287 2288**起始版本:** 2289 22908 2291 2292 2293### OH_Drawing_SetTypographyTextAlign() 2294 2295 2296``` 2297void OH_Drawing_SetTypographyTextAlign (OH_Drawing_TypographyStyle * , int ) 2298``` 2299 2300**描述:** 2301 2302设置文本对齐方式 2303 2304@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2305 2306**参数:** 2307 2308| Name | 描述 | 2309| -------------------------- | ---------------------------------------- | 2310| OH_Drawing_TypographyStyle | 指向OH_Drawing_TypographyStyle对象的指针 | 2311| int | OH_Drawing_TextAlign枚举类型 | 2312 2313**起始版本:** 2314 23158 2316 2317 2318### OH_Drawing_SetTypographyTextDirection() 2319 2320 2321``` 2322void OH_Drawing_SetTypographyTextDirection (OH_Drawing_TypographyStyle * , int ) 2323``` 2324 2325**描述:** 2326 2327设置文本方向 2328 2329@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2330 2331**参数:** 2332 2333| Name | 描述 | 2334| -------------------------- | ---------------------------------------- | 2335| OH_Drawing_TypographyStyle | 指向OH_Drawing_TypographyStyle对象的指针 | 2336| int | OH_Drawing_TextDirection枚举类型 | 2337 2338**起始版本:** 2339 23408 2341 2342 2343### OH_Drawing_SetTypographyTextMaxLines() 2344 2345 2346``` 2347void OH_Drawing_SetTypographyTextMaxLines (OH_Drawing_TypographyStyle * , int ) 2348``` 2349 2350**描述:** 2351 2352设置文本最大行数 2353 2354@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2355 2356**参数:** 2357 2358| Name | 描述 | 2359| -------------------------- | ---------------------------------------- | 2360| OH_Drawing_TypographyStyle | 指向OH_Drawing_TypographyStyle对象的指针 | 2361| int | 最大行数 | 2362 2363**起始版本:** 2364 23658 2366 2367### OH_Drawing_TypographyGetAlphabeticBaseline() 2368 2369``` 2370double OH_Drawing_TypographyGetAlphabeticBaseline (OH_Drawing_Typography * ) 2371``` 2372 2373**描述:** 2374 2375获取字母文字基线 2376 2377@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2378 2379**参数:** 2380 2381| 名称 | 描述 | 2382| --------------------- | ----------------------------------- | 2383| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2384 2385**返回:** 2386 2387返回字母文字基线 2388 2389**起始版本:** 2390 23919 2392 2393### OH_Drawing_TypographyGetHeight() 2394 2395``` 2396double OH_Drawing_TypographyGetHeight (OH_Drawing_Typography * ) 2397``` 2398 2399**描述:** 2400 2401获取高度 2402 2403@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2404 2405**参数:** 2406 2407| 名称 | 描述 | 2408| --------------------- | ----------------------------------- | 2409| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2410 2411**返回:** 2412 2413返回高度 2414 2415**起始版本:** 2416 24179 2418 2419### OH_Drawing_TypographyGetIdeographicBaseline() 2420 2421``` 2422double OH_Drawing_TypographyGetIdeographicBaseline (OH_Drawing_Typography * ) 2423``` 2424 2425**描述:** 2426 2427获取表意文字基线 2428 2429@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2430 2431**参数:** 2432 2433| 名称 | 描述 | 2434| --------------------- | ----------------------------------- | 2435| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2436 2437**返回:** 2438 2439返回表意文字基线 2440 2441**起始版本:** 2442 24439 2444 2445### OH_Drawing_TypographyGetLongestLine() 2446 2447**描述:** 2448 2449获取最长行 2450 2451@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2452 2453**参数:** 2454 2455| 名称 | 描述 | 2456| --------------------- | ----------------------------------- | 2457| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2458 2459**返回:** 2460 2461返回最长行 2462 2463**起始版本:** 2464 24659 2466 2467### OH_Drawing_TypographyGetMaxIntrinsicWidth() 2468 2469``` 2470double OH_Drawing_TypographyGetMaxIntrinsicWidth (OH_Drawing_Typography * ) 2471``` 2472 2473**描述:** 2474 2475获取最大固有宽度 2476 2477@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2478 2479**参数:** 2480 2481| 名称 | 描述 | 2482| --------------------- | ----------------------------------- | 2483| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2484 2485**返回:** 2486 2487返回最大固有宽度 2488 2489**起始版本:** 2490 24919 2492 2493### OH_Drawing_TypographyGetMaxWidth() 2494 2495``` 2496double OH_Drawing_TypographyGetMaxWidth (OH_Drawing_Typography * ) 2497``` 2498 2499**描述:** 2500 2501获取最大宽度 2502 2503@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2504 2505**参数:** 2506 2507| 名称 | 描述 | 2508| --------------------- | ----------------------------------- | 2509| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2510 2511**返回:** 2512 2513返回最大宽度 2514 2515**起始版本:** 2516 25179 2518 2519### OH_Drawing_TypographyGetMinIntrinsicWidth() 2520 2521``` 2522double OH_Drawing_TypographyGetMinIntrinsicWidth (OH_Drawing_Typography * ) 2523``` 2524 2525**描述:** 2526 2527获取最小固有宽度 2528 2529@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2530 2531**参数:** 2532 2533| 名称 | 描述 | 2534| --------------------- | ----------------------------------- | 2535| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2536 2537**返回:** 2538 2539返回最小固有宽度 2540 2541**起始版本:** 2542 25439 2544 2545### OH_Drawing_TypographyHandlerAddText() 2546 2547 2548``` 2549void OH_Drawing_TypographyHandlerAddText (OH_Drawing_TypographyCreate * , const char * ) 2550``` 2551 2552**描述:** 2553 2554设置文本内容 2555 2556@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2557 2558**参数:** 2559 2560| Name | 描述 | 2561| --------------------------- | ----------------------------------------- | 2562| OH_Drawing_TypographyCreate | 指向OH_Drawing_TypographyCreate对象的指针 | 2563| char | 指向文本内容的指针 | 2564 2565**起始版本:** 2566 25678 2568 2569 2570### OH_Drawing_TypographyHandlerPopTextStyle() 2571 2572 2573``` 2574void OH_Drawing_TypographyHandlerPopTextStyle (OH_Drawing_TypographyCreate * ) 2575``` 2576 2577**描述:** 2578 2579排版弹出 2580 2581@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2582 2583**参数:** 2584 2585| Name | 描述 | 2586| --------------------------- | ----------------------------------------- | 2587| OH_Drawing_TypographyCreate | 指向OH_Drawing_TypographyCreate对象的指针 | 2588 2589**起始版本:** 2590 25918 2592 2593 2594### OH_Drawing_TypographyHandlerPushTextStyle() 2595 2596 2597``` 2598void OH_Drawing_TypographyHandlerPushTextStyle (OH_Drawing_TypographyCreate * , OH_Drawing_TextStyle * ) 2599``` 2600 2601**描述:** 2602 2603设置排版风格 2604 2605@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2606 2607**参数:** 2608 2609| Name | 描述 | 2610| --------------------------- | ----------------------------------------- | 2611| OH_Drawing_TypographyCreate | 指向OH_Drawing_TypographyCreate对象的指针 | 2612| OH_Drawing_TextStyle | 指向OH_Drawing_TextStyle对象的指针 | 2613 2614**起始版本:** 2615 26168 2617 2618 2619### OH_Drawing_TypographyLayout() 2620 2621 2622``` 2623void OH_Drawing_TypographyLayout (OH_Drawing_Typography * , double ) 2624``` 2625 2626**描述:** 2627 2628排版布局 2629 2630@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2631 2632**参数:** 2633 2634| Name | 描述 | 2635| --------------------- | ----------------------------------- | 2636| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2637| double | 文本最大宽度 | 2638 2639**起始版本:** 2640 26418 2642 2643 2644### OH_Drawing_TypographyPaint() 2645 2646 2647``` 2648void OH_Drawing_TypographyPaint (OH_Drawing_Typography * , OH_Drawing_Canvas * , double , double ) 2649``` 2650 2651**描述:** 2652 2653显示文本 2654 2655@syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 2656 2657**参数:** 2658 2659| Name | 描述 | 2660| --------------------- | ----------------------------------- | 2661| OH_Drawing_Typography | 指向OH_Drawing_Typography对象的指针 | 2662| OH_Drawing_Canvas | 指向OH_Drawing_Canvas对象的指针 | 2663| double | x坐标 | 2664| double | y坐标 | 2665 2666**起始版本:** 2667 26688