跳转至

ui_canvas_ext

ui_canvas_ext 模块提供扩展画布组件,在画布基础上增加旋转、缩放、贝塞尔曲线等高级绘制能力。

Class Summary

OHOS::UICanvasExt

扩展画布绘制能力,支持硬件加速路径绘制与 SVG 渲染

Functions

OHOS::UICanvasExt

GetViewType

UIViewType GetViewType() const override

功能说明

  • 核心用途:获取当前视图的类型标识
  • 设计目的:用于运行时识别视图类型为 UI_CANVAS_EXT
  • 使用场景:视图类型判断与分发处理

返回值

  • 返回类型:UIViewType

返回当前视图类型标识

返回值 触发场景
UI_CANVAS_EXT 当前对象为 UICanvasExt 类型

BeginPath

int16_t BeginPath(const PaintExt &paint)

功能说明

  • 核心用途:在上下文中初始化新路径,并指定路径样式
  • 设计目的:为后续路径绘制操作创建路径对象,返回索引值用于关联矩阵或引用
  • 使用场景:绘制自定义路径前必须首先调用此方法创建路径

入参

名称 参数类型 详细说明 约束取值范围
paint const PaintExt& 入参只读引用,指定新创建路径的样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与路径对象关联的索引值

返回值 触发场景
>= 0 成功创建路径,返回有效索引
-1 创建路径失败

SetPathData

void SetPathData(uint32_t cmdNum, const uint8_t* cmd, uint32_t dataNum, const float* data)

功能说明

  • 核心用途:设置当前路径的命令序列与浮点数据
  • 设计目的:通过路径命令与数据描述复杂图形轨迹
  • 使用场景:配合 BeginPath 使用,在创建路径后设置其路径数据

入参

名称 参数类型 详细说明 约束取值范围
cmdNum uint32_t 命令数量 >= 0
cmd const uint8_t* 入参只读指针,路径命令数组 非 nullptr
dataNum uint32_t 浮点数据数量 >= 0
data const float* 入参只读指针,路径浮点数据数组 非 nullptr

Clear

void Clear()

功能说明

  • 核心用途:清除画布上所有路径、画笔和矩阵数据
  • 设计目的:重置画布状态,清空所有已绘制内容
  • 使用场景:需要重新绘制或清空画布时调用

SetMatrix

void SetMatrix(Matrix3<float> matrix, int16_t index = -1)

功能说明

  • 核心用途:设置指定路径对象的变换矩阵
  • 设计目的:对路径施加平移、旋转、缩放等几何变换
  • 使用场景:需要在绘制前对路径进行变换操作时调用

入参

名称 参数类型 详细说明 约束取值范围
matrix Matrix3 变换矩阵 有效的 3x3 变换矩阵
index int16_t 路径对象索引,关联到 BeginPath 或 DrawGraphics 方法的返回值;默认值 -1 关联最后创建的路径对象 -1 或有效路径索引

SetSvgMatrix

void SetSvgMatrix(Matrix3<float> matrix, int16_t index)

功能说明

  • 核心用途:设置指定 SVG 对象的变换矩阵
  • 设计目的:对 SVG 渲染结果施加几何变换
  • 使用场景:需要在绘制前对 SVG 对象进行变换操作时调用

入参

名称 参数类型 详细说明 约束取值范围
matrix Matrix3 变换矩阵 有效的 3x3 变换矩阵
index int16_t SVG 对象索引,即 DrawSvg 的返回值 有效的 SVG 索引

DrawPath

void DrawPath()

功能说明

  • 核心用途:将绘制标志设置为 true,标记当前路径可绘制
  • 设计目的:通知画布当前路径数据已就绪,可进行渲染
  • 使用场景:在 BeginPath 和 SetPathData 之后调用,启用路径绘制

DrawSvg

int16_t DrawSvg(const char* path)

功能说明

  • 核心用途:绘制指定路径的 SVG 数据
  • 设计目的:加载并渲染 SVG 二进制文件
  • 使用场景:需要在画布上渲染 SVG 图形时调用

入参

名称 参数类型 详细说明 约束取值范围
path const char* 入参只读指针,SVG 二进制文件路径 非 nullptr,有效的文件路径字符串

返回值

  • 返回类型:int16_t

返回与 SVG 对象关联的索引值

返回值 触发场景
>= 0 成功创建 SVG 对象,返回有效索引
-1 创建 SVG 对象失败

DrawLine

int16_t DrawLine(const Point& startPoint, const Point& endPoint, const PaintExt& paint)

功能说明

  • 核心用途:绘制从起点坐标到终点坐标的直线
  • 设计目的:提供基础线段绘制能力
  • 使用场景:绘制界面中的直线元素

入参

名称 参数类型 详细说明 约束取值范围
startPoint const Point& 入参只读引用,直线起点坐标 有效的 Point 对象
endPoint const Point& 入参只读引用,直线终点坐标 有效的 Point 对象
paint const PaintExt& 入参只读引用,直线样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawPolyline

int16_t DrawPolyline(const Point *points, uint32_t pointNum, const PaintExt& paint)

功能说明

  • 核心用途:绘制由多个点描述的折线
  • 设计目的:提供多点连接的折线绘制能力
  • 使用场景:绘制多段连续线段

入参

名称 参数类型 详细说明 约束取值范围
points const Point* 入参只读指针,折线途经点数组 非 nullptr
pointNum uint32_t 途经点数量 >= 2
paint const PaintExt& 入参只读引用,折线样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawPolygon

int16_t DrawPolygon(const Point *points, uint32_t pointNum, const PaintExt& paint)

功能说明

  • 核心用途:绘制由多个点描述的多边形
  • 设计目的:提供闭合多边形绘制能力
  • 使用场景:绘制填充或描边的多边形图形

入参

名称 参数类型 详细说明 约束取值范围
points const Point* 入参只读指针,多边形顶点数组 非 nullptr
pointNum uint32_t 顶点数量 >= 3
paint const PaintExt& 入参只读引用,多边形样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawCurve

int16_t DrawCurve(const Point& startPoint, const Point& control1, const Point& control2, const Point& endPoint, const PaintExt& paint)

功能说明

  • 核心用途:绘制三次贝塞尔曲线
  • 设计目的:提供从起点经两个控制点到终点的平滑曲线绘制能力
  • 使用场景:绘制平滑曲线、弧形路径

入参

名称 参数类型 详细说明 约束取值范围
startPoint const Point& 入参只读引用,曲线起点坐标 有效的 Point 对象
control1 const Point& 入参只读引用,第一个控制点坐标 有效的 Point 对象
control2 const Point& 入参只读引用,第二个控制点坐标 有效的 Point 对象
endPoint const Point& 入参只读引用,曲线终点坐标 有效的 Point 对象
paint const PaintExt& 入参只读引用,曲线样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawRect

int16_t DrawRect(const Point& startPoint, int16_t height, int16_t width, const PaintExt& paint, uint16_t radius = 0)

功能说明

  • 核心用途:绘制矩形,支持圆角
  • 设计目的:提供矩形绘制能力,可通过 radius 参数指定圆角半径
  • 使用场景:绘制界面中的矩形区域、圆角矩形

入参

名称 参数类型 详细说明 约束取值范围
startPoint const Point& 入参只读引用,矩形左上角坐标 有效的 Point 对象
height int16_t 矩形高度 > 0
width int16_t 矩形宽度 > 0
paint const PaintExt& 入参只读引用,矩形样式 有效的 PaintExt 对象
radius uint16_t 圆角半径,缺省值为 0(直角矩形) 0 ~ min(height, width) / 2

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawCircle

int16_t DrawCircle(const Point& center, uint16_t radius, const PaintExt& paint)

功能说明

  • 核心用途:绘制圆形
  • 设计目的:提供以指定圆心和半径绘制圆形的能力
  • 使用场景:绘制圆形图形元素

入参

名称 参数类型 详细说明 约束取值范围
center const Point& 入参只读引用,圆心坐标 有效的 Point 对象
radius uint16_t 圆的半径 > 0
paint const PaintExt& 入参只读引用,圆形样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawSector

int16_t DrawSector(const Point& center, uint16_t radius, float startAngle, float endAngle, const PaintExt& paint)

功能说明

  • 核心用途:绘制扇形
  • 设计目的:提供以指定圆心、半径和角度范围绘制扇形的能力
  • 使用场景:绘制饼图、扇形指示器等图形

入参

名称 参数类型 详细说明 约束取值范围
center const Point& 入参只读引用,扇形圆心坐标 有效的 Point 对象
radius uint16_t 扇形半径 > 0
startAngle float 起始角度,0 表示 12 点钟方向,90 表示 3 点钟方向 任意浮点值
endAngle float 结束角度,0 表示 12 点钟方向,90 表示 3 点钟方向 任意浮点值
paint const PaintExt& 入参只读引用,扇形样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawArc

int16_t DrawArc(const Point& center, uint16_t radius, float startAngle, float endAngle, const PaintExt& paint)

功能说明

  • 核心用途:绘制弧线
  • 设计目的:提供以指定圆心、半径和角度范围绘制弧线的能力
  • 使用场景:绘制弧形路径、圆弧指示器

入参

名称 参数类型 详细说明 约束取值范围
center const Point& 入参只读引用,弧线圆心坐标 有效的 Point 对象
radius uint16_t 弧线半径 > 0
startAngle float 起始角度,0 表示 12 点钟方向,90 表示 3 点钟方向 任意浮点值
endAngle float 结束角度,0 表示 12 点钟方向,90 表示 3 点钟方向 任意浮点值
paint const PaintExt& 入参只读引用,弧线样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawImage

int16_t DrawImage(const Point& startPoint, const char* image, const PaintExt& paint)

功能说明

  • 核心用途:绘制图像,通过文件路径加载
  • 设计目的:提供从文件路径加载图像并绘制到画布的能力
  • 使用场景:在画布上渲染图片文件

入参

名称 参数类型 详细说明 约束取值范围
startPoint const Point& 入参只读引用,图像左上角坐标 有效的 Point 对象
image const char* 入参只读指针,图像文件路径 非 nullptr,有效的文件路径字符串
paint const PaintExt& 入参只读引用,图像样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawImage

int16_t DrawImage(const Point& startPoint, ImageInfo *image, const PaintExt& paint)

功能说明

  • 核心用途:绘制图像,通过 ImageInfo 数据加载
  • 设计目的:提供从 ImageInfo 结构体加载图像并绘制到画布的能力
  • 使用场景:在画布上渲染内存中的图像数据

入参

名称 参数类型 详细说明 约束取值范围
startPoint const Point& 入参只读引用,图像左上角坐标 有效的 Point 对象
image ImageInfo* 入参指针,图像信息结构体 非 nullptr,有效的 ImageInfo 对象
paint const PaintExt& 入参只读引用,图像样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawLabel

int16_t DrawLabel(const Point& startPoint, const char* text, uint16_t maxWidth, const FontStyle& fontStyle, const PaintExt& paint)

功能说明

  • 核心用途:绘制文本,以起点坐标定位
  • 设计目的:提供从指定起点绘制文本的能力,支持最大宽度截断
  • 使用场景:在画布上渲染文字内容

入参

名称 参数类型 详细说明 约束取值范围
startPoint const Point& 入参只读引用,文本起始坐标 有效的 Point 对象
text const char* 入参只读指针,文本内容 非 nullptr
maxWidth uint16_t 文本最大显示宽度,超出则截断 > 0
fontStyle const FontStyle& 入参只读引用,文本布局与字体样式 有效的 FontStyle 对象
paint const PaintExt& 入参只读引用,文本样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawLabel

int16_t DrawLabel(const Rect& rect, const char* text, const FontStyle& fontStyle, const PaintExt& paint)

功能说明

  • 核心用途:绘制文本,以矩形区域定位
  • 设计目的:提供在指定矩形区域内绘制文本的能力
  • 使用场景:在画布指定区域内渲染文字内容

入参

名称 参数类型 详细说明 约束取值范围
rect const Rect& 入参只读引用,文本绘制区域 有效的 Rect 对象
text const char* 入参只读指针,文本内容 非 nullptr
fontStyle const FontStyle& 入参只读引用,文本布局与字体样式 有效的 FontStyle 对象
paint const PaintExt& 入参只读引用,文本样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawBitmap

int16_t DrawBitmap(const BufferInfo *bitmap, const PaintExt& paint)

功能说明

  • 核心用途:绘制位图
  • 设计目的:提供从 BufferInfo 缓冲区数据绘制位图的能力
  • 使用场景:在画布上渲染内存中的位图数据

入参

名称 参数类型 详细说明 约束取值范围
bitmap const BufferInfo* 入参只读指针,位图缓冲区信息 非 nullptr,有效的 BufferInfo 对象
paint const PaintExt& 入参只读引用,位图样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

DrawRenderCache

int16_t DrawRenderCache(uint32_t cacheKey, const PaintExt& paint)

功能说明

  • 核心用途:绘制渲染缓存
  • 设计目的:提供按缓存键绘制预渲染内容的能力
  • 使用场景:绘制已缓存的渲染结果以提升渲染性能

入参

名称 参数类型 详细说明 约束取值范围
cacheKey uint32_t 渲染缓存的键值 有效的缓存键
paint const PaintExt& 入参只读引用,渲染缓存样式 有效的 PaintExt 对象

返回值

  • 返回类型:int16_t

返回与绘制对象关联的索引值

返回值 触发场景
>= 0 成功创建绘制对象,返回有效索引
-1 创建绘制对象失败

Enumerations

UIViewType

enum UIViewType : uint8_t {
    UI_ROOT_VIEW = 0,
    UI_VIEW_GROUP,
    UI_LABEL,
    UI_ARC_LABEL,
    UI_LABEL_BUTTON,
    UI_CHECK_BOX,
    UI_TOGGLE_BUTTON,
    UI_RADIO_BUTTON,
    UI_IMAGE_VIEW,
    UI_BOX_PROGRESS,
    UI_SLIDER,
    UI_CIRCLE_PROGRESS,
    UI_SCROLL_VIEW,
    UI_LIST,
    UI_DIGITAL_CLOCK,
    UI_ANALOG_CLOCK,
    UI_PICKER,
    UI_SWIPE_VIEW,
    UI_TIME_PICKER,
    UI_ABSTRACT_CLOCK,
    UI_ABSTRACT_PROGRESS,
    UI_ABSTRACT_SCROLL,
    UI_AXIS,
    UI_BUTTON,
    UI_CANVAS,
    UI_CHART,
    UI_IMAGE_ANIMATOR_VIEW,
    UI_REPEAT_BUTTON,
    UI_TEXTURE_MAPPER,
    UI_DIALOG,
    UI_QRCODE,
    UI_LABEL_EXT,
    UI_LABEL_BUTTON_EXT,
    UI_CANVAS_EXT,
    UI_CHART_PILLAR,
    UI_CHART_POLYLINE,
    UI_X_AXIS,
    UI_Y_AXIS,
    UI_LITE_SURFACE_VIEW,
    LAYOUT,
    LIST_LAYOUT,
    FLEX_LAYOUT,
    GRID_LAYOUT,
};
枚举成员 取值 描述
UI_CANVAS_EXT 33 扩展画布视图类型

PathCmd

enum PathCmd {
    CMD_CLOSE = 0,
    CMD_MOVE_TO = 1 << 1,
    CMD_LINE_TO = 2 << 1,
    CMD_HLINE_TO = 3 << 1,
    CMD_VLINE_TO = 4 << 1,
    CMD_QUARD_TO = 5 << 1,
    CMD_CUBIC_TO = 6 << 1,
    CMD_SQUARD_TO = 7 << 1,
    CMD_SCUBIC_TO = 8 << 1,
    CMD_SCCWARC_TO = 9 << 1,
    CMD_SCWARC_TO = 10 << 1,
    CMD_LCCWARC_TO = 11 << 1,
    CMD_LCWARC_TO = 12 << 1,
};
枚举成员 取值 描述
CMD_CLOSE 0 关闭路径
CMD_MOVE_TO 2 移动到指定点
CMD_LINE_TO 4 绘制直线到指定点
CMD_HLINE_TO 6 绘制水平线到指定 x 坐标
CMD_VLINE_TO 8 绘制垂直线到指定 y 坐标
CMD_QUARD_TO 10 绘制二次贝塞尔曲线
CMD_CUBIC_TO 12 绘制三次贝塞尔曲线
CMD_SQUARD_TO 14 绘制平滑二次贝塞尔曲线
CMD_SCUBIC_TO 16 绘制平滑三次贝塞尔曲线
CMD_SCCWARC_TO 18 绘制小弧逆时针弧线
CMD_SCWARC_TO 20 绘制小弧顺时针弧线
CMD_LCCWARC_TO 22 绘制大弧逆时针弧线
CMD_LCWARC_TO 24 绘制大弧顺时针弧线

FillRule

enum class FillRule {
    NON_ZERO = 0,
    EVEN_ODD,
};
枚举成员 取值 描述
NON_ZERO 0 非零环绕规则
EVEN_ODD 1 奇偶规则

GradientSpread

enum class GradientSpread {
    SPREAD_PAD,
    SPREAD_REFLECT,
    SPREAD_REPEAT,
};
枚举成员 取值 描述
SPREAD_PAD 0 边缘填充
SPREAD_REFLECT 1 反射扩展
SPREAD_REPEAT 2 重复扩展

JoinType

enum class JoinType {
    JOIN_MITER = 0,
    JOIN_ROUND,
    JOIN_BEVEL,
};
枚举成员 取值 描述
JOIN_MITER 0 尖角连接
JOIN_ROUND 1 圆角连接
JOIN_BEVEL 2 斜角连接

GradientType

enum class GradientType {
    GRADIENT_LINEAR,
    GRADIENT_RADIAL,
    GRADIENT_SWEEP,
    GRADIENT_BUTT,
};
枚举成员 取值 描述
GRADIENT_LINEAR 0 线性渐变
GRADIENT_RADIAL 1 径向渐变
GRADIENT_SWEEP 2 扫描渐变
GRADIENT_BUTT 3 渐变类型结束标记

PatternType

enum class PatternType {
    PATTERN_DISABLE = 0,
    PATTERN_FILL,
    PATTERN_PAD,
    PATTERN_REFLECT,
    PATTERN_REPEAT,
};
枚举成员 取值 描述
PATTERN_DISABLE 0 禁用图案填充
PATTERN_FILL 1 纯色填充
PATTERN_PAD 2 边缘填充
PATTERN_REFLECT 3 反射图案
PATTERN_REPEAT 4 重复图案

PaintType

enum class PaintType {
    PAINT_GRADIENT,
    PAINT_PATTERN,
    PAINT_COLOR,
    PAINT_BUTT
};
枚举成员 取值 描述
PAINT_GRADIENT 0 渐变画笔
PAINT_PATTERN 1 图案画笔
PAINT_COLOR 2 纯色画笔
PAINT_BUTT 3 画笔类型结束标记

Structures

Point

struct Point {
    int16_t x;
    int16_t y;
};

成员说明

成员名称 数据类型 描述
x int16_t X 坐标
y int16_t Y 坐标

Path

struct Path {
    uint32_t cmdNum;
    uint8_t* cmds;
    uint32_t dataNum;
    float* data;
};

成员说明

成员名称 数据类型 描述
cmdNum uint32_t 命令数量
cmds uint8_t* 命令数组指针
dataNum uint32_t 浮点数据数量
data float* 浮点数据数组指针

ColorStop

struct ColorStop {
    float stop;
    uint32_t color;
};

成员说明

成员名称 数据类型 描述
stop float 渐变停止位置,取值范围 0.0 ~ 1.0
color uint32_t 渐变停止颜色值

LinearGradient

struct LinearGradient {
    int16_t startX;
    int16_t startY;
    int16_t endX;
    int16_t endY;
};

成员说明

成员名称 数据类型 描述
startX int16_t 起点X坐标
startY int16_t 起点Y坐标
endX int16_t 终点X坐标
endY int16_t 终点Y坐标

RadialGradient

struct RadialGradient {
    int16_t centerX;
    int16_t centerY;
    int16_t focalX;
    int16_t focalY;
    int16_t radius;
};

成员说明

成员名称 数据类型 描述
centerX int16_t 圆心X坐标
centerY int16_t 圆心Y坐标
focalX int16_t 焦点X坐标(当前不支持)
focalY int16_t 焦点Y坐标(当前不支持)
radius int16_t 半径

SweepGradient

struct SweepGradient {
    int16_t centerX;
    int16_t centerY;
    int16_t startAngle;
};

成员说明

成员名称 数据类型 描述
centerX int16_t 圆心X坐标
centerY int16_t 圆心Y坐标
startAngle int16_t 起始角度,0 表示 12 点钟方向,90 表示 3 点钟方向

PatternInfo

struct PatternInfo {
    ImageInfo img;
    PatternType wrap;
    uint32_t color;
    Matrix3<float> mat3;
};

成员说明

成员名称 数据类型 描述
img ImageInfo 图像信息
wrap PatternType 图案填充类型
color uint32_t 填充颜色,wrap 为 PATTERN_FILL 时使用
mat3 Matrix3 变换矩阵,图案填充时使用

BufferInfo

struct BufferInfo {
    Rect rect;
    uint32_t stride;
    void* phyAddr;
    void* virAddr;
    uint16_t width;
    uint16_t height;
    ColorMode mode;
    uint32_t color;
};

成员说明

成员名称 数据类型 描述
rect Rect 缓冲区矩形区域
stride uint32_t 行跨度(字节)
phyAddr void* 物理地址指针
virAddr void* 虚拟地址指针
width uint16_t 宽度
height uint16_t 高度
mode ColorMode 颜色模式
color uint32_t 颜色值

FontStyle(UICanvas::FontStyle)

struct FontStyle {
    UITextLanguageDirect direct;
    UITextLanguageAlignment align;
    UITextLanguageAlignment verticalAlign = TEXT_ALIGNMENT_TOP;
    uint8_t fontSize;
    int16_t letterSpace;
    const char* fontName;
};

成员说明

成员名称 数据类型 描述
direct UITextLanguageDirect 文本方向
align UITextLanguageAlignment 水平对齐方式
verticalAlign UITextLanguageAlignment 垂直对齐方式,默认 TEXT_ALIGNMENT_TOP
fontSize uint8_t 字体大小
letterSpace int16_t 字间距
fontName const char* 字体名称