Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

Label

继承: Control < CanvasItem < Node < Object

用于显示纯文本的控件。

描述

用于显示纯文本的控件。可以控制水平和垂直对齐方式以及文本在节点包围框内的换行方式。不支持粗体、斜体等富文本格式。这种需求请改用 RichTextLabel

教程

属性

AutowrapMode

autowrap_mode

0

bool

clip_text

false

HorizontalAlignment

horizontal_alignment

0

BitField<JustificationFlag>

justification_flags

163

LabelSettings

label_settings

String

language

""

int

lines_skipped

0

int

max_lines_visible

-1

MouseFilter

mouse_filter

2 (overrides Control)

BitField<SizeFlags>

size_flags_vertical

4 (overrides Control)

StructuredTextParser

structured_text_bidi_override

0

Array

structured_text_bidi_override_options

[]

PackedFloat32Array

tab_stops

PackedFloat32Array()

String

text

""

TextDirection

text_direction

0

OverrunBehavior

text_overrun_behavior

0

bool

uppercase

false

VerticalAlignment

vertical_alignment

0

int

visible_characters

-1

VisibleCharactersBehavior

visible_characters_behavior

0

float

visible_ratio

1.0

方法

int

get_line_count ( ) const

int

get_line_height ( int line=-1 ) const

int

get_total_character_count ( ) const

int

get_visible_line_count ( ) const

主题属性

Color

font_color

Color(1, 1, 1, 1)

Color

font_outline_color

Color(1, 1, 1, 1)

Color

font_shadow_color

Color(0, 0, 0, 0)

int

line_spacing

3

int

outline_size

0

int

shadow_offset_x

1

int

shadow_offset_y

1

int

shadow_outline_size

1

Font

font

int

font_size

StyleBox

normal


属性说明

AutowrapMode autowrap_mode = 0

如果设置为 TextServer.AUTOWRAP_OFF 以外的值,则文本将在节点的边界矩形内自动换行。如果你调整节点大小,就会自动更改其高度,从而显示所有文本。要了解每种模式的行为方式,请参阅 AutowrapMode


bool clip_text = false

  • void set_clip_text ( bool value )

  • bool is_clipping_text ( )

如果为 true,Label 将仅显示位于其边界矩形内部的文本,并将水平裁剪文本。


HorizontalAlignment horizontal_alignment = 0

控制文本的水平对齐方式。支持左对齐、居中对齐、右对齐、和填充、或两端对齐。将其设置为 HorizontalAlignment 常量之一。


BitField<JustificationFlag> justification_flags = 163

行两端对齐规则。详见 JustificationFlag


LabelSettings label_settings

LabelSettings 资源,可以在多个 Label 节点之间共享。优先于主题属性。


String language = ""

  • void set_language ( String value )

  • String get_language ( )

语言代码,用于断行和文本塑形算法,如果留空则使用当前区域设置。


int lines_skipped = 0

  • void set_lines_skipped ( int value )

  • int get_lines_skipped ( )

text 值的开头开始忽略且不显示的行数。


int max_lines_visible = -1

  • void set_max_lines_visible ( int value )

  • int get_max_lines_visible ( )

限制节点在屏幕上显示的文本行数。


StructuredTextParser structured_text_bidi_override = 0

为结构化文本设置 BiDi 算法覆盖。


Array structured_text_bidi_override_options = []

  • void set_structured_text_bidi_override_options ( Array value )

  • Array get_structured_text_bidi_override_options ( )

设置 BiDi 覆盖的附加选项。


PackedFloat32Array tab_stops = PackedFloat32Array()

将文本与给定的制表位对齐。


String text = ""

要在屏幕上显示的文本。


TextDirection text_direction = 0

基础文本书写方向。


OverrunBehavior text_overrun_behavior = 0

设置文本超出节点的边界矩形时的裁剪行为。有关所有模式的描述,请参阅 OverrunBehavior


bool uppercase = false

  • void set_uppercase ( bool value )

  • bool is_uppercase ( )

如果为 true,所有文本都将显示为大写。


VerticalAlignment vertical_alignment = 0

控制文本的垂直对齐方式。支持顶部对齐、居中对齐、底部对齐、和填充。将其设置为 VerticalAlignment 常量之一。


int visible_characters = -1

  • void set_visible_characters ( int value )

  • int get_visible_characters ( )

要显示的字符数。如果设置为 -1,则显示所有字符。这用于在对话框中为显示的文本设置动画。

注意:设置该属性会相应地更新 visible_ratio


VisibleCharactersBehavior visible_characters_behavior = 0

设置 visible_charactersvisible_ratio 被设置时的裁剪行为。有关详细信息,请参阅 VisibleCharactersBehavior


float visible_ratio = 1.0

  • void set_visible_ratio ( float value )

  • float get_visible_ratio ( )

相对于字符总数(参见 get_total_character_count),要显示的字符的占比。如果设置为 1.0,则显示所有字符。如果设置为 0.5,则只显示一半的字符。这用于在对话框中为显示的文本设置动画。

注意:设置该属性会相应地更新 visible_characters


方法说明

int get_line_count ( ) const

返回该 Label 的文本行数。


int get_line_height ( int line=-1 ) const

返回行 line 的高度。

如果 line 被设置为 -1 ,则返回最大的行高。

如果没有行,则返回字体大小,单位是像素。


int get_total_character_count ( ) const

返回文本中可打印的字符总数,不包括空格和换行符。


int get_visible_line_count ( ) const

返回显示的行数。如果 Label 的高度目前无法显示所有的行数,将会有用。


主题属性说明

Color font_color = Color(1, 1, 1, 1)

Label 标签的默认文本颜色 Color


Color font_outline_color = Color(1, 1, 1, 1)

文本轮廓的颜色。


Color font_shadow_color = Color(0, 0, 0, 0)

文本阴影效果的颜色 Color


int line_spacing = 3

多行 Label 中,行与行之间的垂直间距。


int outline_size = 0

文字轮廓的大小。

注意:如果使用启用了 FontFile.multichannel_signed_distance_field 的字体,其 FontFile.msdf_pixel_range 必须至少设置为 outline_size两倍,轮廓渲染才能看起来正确。否则,轮廓可能会比预期的更早被切断。

注意:不建议使用大于字体大小一半的值,因为这种情况下字体轮廓可能无法完全闭合。


int shadow_offset_x = 1

文本阴影的水平偏移。


int shadow_offset_y = 1

文本阴影的垂直偏移。


int shadow_outline_size = 1

阴影轮廓的大小。


Font font

用于标签 Label 文本的字体 Font


int font_size

Label 文本的字体大小。


StyleBox normal

Label 设置背景样式盒 StyleBox