• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Interfaces (其他)
2
3<!--Kit: ArkGraphics 2D-->
4<!--Subsystem: Graphics-->
5<!--Owner: @hangmengxin-->
6<!--Designer: @wangyanglan-->
7<!--Tester: @nobuggers-->
8<!--Adviser: @ge-yafang-->
9
10> **说明:**
11>
12> - 本模块首批接口从API version 11开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
13>
14> - 本模块使用屏幕物理像素单位px。
15>
16> - 本模块为单线程模型策略,需要调用方自行管理线程安全和上下文状态的切换。
17
18## TextBlobRunBuffer
19
20描述一行文字中具有相同属性的连续字形。
21
22**系统能力:** SystemCapability.Graphics.Drawing
23
24| 名称      | 类型   | 只读 | 可选 | 说明                      |
25| --------- | ------ | ---- | ---- | ------------------------- |
26| glyph     | number | 否   | 否   | 存储文字的索引,该参数为整数,传入浮点类型时向下取整。 |
27| positionX | number | 否   | 否   | 文本的起点x轴坐标,该参数为浮点数。 |
28| positionY | number | 否   | 否   | 文本的起点y轴坐标,该参数为浮点数。 |
29
30## FontMetrics
31
32描述字形大小和布局的属性信息,同一种字体中的字符属性大致相同。
33
34**系统能力:** SystemCapability.Graphics.Drawing
35
36| 名称    | 类型   | 只读 | 可选 | 说明                                                         |
37| ------- | ------ | ---- | ---- | ------------------------------------------------------------ |
38| flags<sup>12+</sup>   | [FontMetricsFlags](arkts-apis-graphics-drawing-e.md#fontmetricsflags12) | 否   | 是   | 表明哪些字体度量标志有效。        |
39| top     | number | 否   | 否   | 文字最高处到基线之间的最大距离,浮点数。                         |
40| ascent  | number | 否   | 否   | 文字最高处到基线之间的距离,浮点数。                             |
41| descent | number | 否   | 否   | 基线到文字最低处之间的距离,浮点数。                             |
42| bottom  | number | 否   | 否   | 基线到文字最低处之间的最大距离,浮点数。                         |
43| leading | number | 否   | 否   | 行间距,从上一行文字descent到下一行文字ascent之间的距离,浮点数。 |
44| avgCharWidth<sup>12+</sup> | number | 否   | 是   | 平均字符宽度。                             |
45| maxCharWidth<sup>12+</sup> | number | 否   | 是   | 最大字符宽度。                             |
46| xMin<sup>12+</sup> | number | 否    | 是   | 字体中任意字形边界框最左边沿到原点的水平距离,这个值往往小于零,意味着字形在水平方向上的最小边界。                |
47| xMax<sup>12+</sup> | number | 否   | 是   | 字体中任意字形边界框最右边沿到原点的水平距离,此值多为正数,指示了字形在水平方向上的最大延伸范围。        |
48| xHeight<sup>12+</sup> | number | 否   | 是   | 小写字母x的高度,通常为负值。                     |
49| capHeight<sup>12+</sup> | number | 否   | 是   | 大写字母的高度,通常为负值。                      |
50| underlineThickness<sup>12+</sup> | number | 否   | 是   | 下划线的厚度。                                          |
51| underlinePosition<sup>12+</sup>  | number | 否   | 是   | 文本基线到下划线顶部的垂直距离,通常是正数。             |
52| strikethroughThickness<sup>12+</sup>  | number | 否   | 是   | 文本删除线的厚度,即贯穿文本字符的水平线的宽度。    |
53| strikethroughPosition<sup>12+</sup>  | number | 否   | 是   | 文本基线到底部删除线的垂直距离,通常为负值。         |
54
55## FontFeature<sup>20+</sup>
56
57表示字体特征。字体特征是字体内置的排版规则,用于控制字形的显示效果,具体包括连字、替代字形、上下标等功能。
58
59**系统能力:** SystemCapability.Graphics.Drawing
60
61| 名称    | 类型   | 只读 | 可选 | 说明   |
62| ------- | ------ | ---- | ---- | ------------------ |
63| name   | string | 否   | 否   | 字体特征的名称。常见的字体特征名称包含liga、frac、case等,需要对应的ttf文件支持才能生效。|
64| value | number | 否 | 否 | 字体特征的数值,浮点数。建议通过字体查看工具或查阅字体文档,确定具体的有效取值范围。|