TextLine¶
继承: RefCounted < Object
保存一行文本。
描述¶
用于处理单行文本的TextServer上的抽象。
属性¶
|
||
|
||
|
||
BitField[JustificationFlag] |
|
|
|
||
|
||
|
||
|
||
|
方法¶
add_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, length: int = 1, baseline: float = 0.0) |
|
add_string(text: String, font: Font, font_size: int, language: String = "", meta: Variant = null) |
|
void |
clear() |
void |
draw(canvas: RID, pos: Vector2, color: Color = Color(1, 1, 1, 1)) const |
void |
draw_outline(canvas: RID, pos: Vector2, outline_size: int = 1, color: Color = Color(1, 1, 1, 1)) const |
get_line_ascent() const |
|
get_line_descent() const |
|
get_line_underline_position() const |
|
get_line_underline_thickness() const |
|
get_line_width() const |
|
get_object_rect(key: Variant) const |
|
get_objects() const |
|
get_rid() const |
|
get_size() const |
|
resize_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, baseline: float = 0.0) |
|
void |
set_bidi_override(override: Array) |
void |
tab_align(tab_stops: PackedFloat32Array) |
属性说明¶
HorizontalAlignment alignment = 0 🔗
void set_horizontal_alignment(value: HorizontalAlignment)
HorizontalAlignment get_horizontal_alignment()
设置行内的文本对齐方式,就好像该行是水平的一样。
文字书写方向。
用于文本剪辑的省略号字符。
BitField[JustificationFlag] flags = 3 🔗
void set_flags(value: BitField[JustificationFlag])
BitField[JustificationFlag] get_flags()
行对齐规则。有关详细信息,请参阅TextServer。
Orientation orientation = 0 🔗
void set_orientation(value: Orientation)
Orientation get_orientation()
文本方向。
bool preserve_control = false 🔗
如果设置为truetext将显示控制字符。
bool preserve_invalid = true 🔗
如果设置为truetext将显示无效字符。
OverrunBehavior text_overrun_behavior = 3 🔗
void set_text_overrun_behavior(value: OverrunBehavior)
OverrunBehavior get_text_overrun_behavior()
当文本超过文本行的设置宽度时设置裁剪行为。有关所有模式的描述,请参阅OverrunBehavior。
文本行宽度。
方法说明¶
bool add_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, length: int = 1, baseline: float = 0.0) 🔗
将内联对象添加到文本缓冲区,key必须是唯一的。在文本中,对象表示为length对象替换字符。
bool add_string(text: String, font: Font, font_size: int, language: String = "", meta: Variant = null) 🔗
添加文本跨度和字体以绘制它。
void clear() 🔗
清除文本行(删除文本和内联对象)。
void draw(canvas: RID, pos: Vector2, color: Color = Color(1, 1, 1, 1)) const 🔗
使用color将文本绘制到画布项的给定位置。pos指定边界框的左上角。
void draw_outline(canvas: RID, pos: Vector2, outline_size: int = 1, color: Color = Color(1, 1, 1, 1)) const 🔗
使用color将文本绘制到画布项的给定位置。pos指定边界框的左上角。
float get_line_ascent() const 🔗
返回文本上升(水平布局基线上方的像素数或垂直布局基线左侧的像素数)。
float get_line_descent() const 🔗
返回文本下降(水平布局基线下方的像素数或垂直布局基线右侧的像素数)。
float get_line_underline_position() const 🔗
返回基线下方下划线的像素偏移量。
float get_line_underline_thickness() const 🔗
返回下划线的粗细。
float get_line_width() const 🔗
返回文本的宽度(用于水平布局)或高度(用于垂直)。
Rect2 get_object_rect(key: Variant) const 🔗
返回内联对象的边界矩形。
返回内联对象数组。
返回TextServer缓冲区RID。
返回文本边界框的大小。
int hit_test(coords: float) const 🔗
返回基线指定像素偏移处的插入符号字符偏移量。此函数始终返回有效位置。
bool resize_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, baseline: float = 0.0) 🔗
设置嵌入对象的新大小和对齐方式。
void set_bidi_override(override: Array) 🔗
覆盖结构化文本的BiDi。
覆盖范围应覆盖没有重叠的完整源代码文本。BiDi算法将分别用于每个范围。
void tab_align(tab_stops: PackedFloat32Array) 🔗
将文本与给定的制表符对齐。