class_label.rst 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742
  1. :github_url: hide
  2. .. meta::
  3. :keywords: text
  4. .. DO NOT EDIT THIS FILE!!!
  5. .. Generated automatically from Godot engine sources.
  6. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  7. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/Label.xml.
  8. .. _class_Label:
  9. Label
  10. =====
  11. **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  12. A control for displaying plain text.
  13. .. rst-class:: classref-introduction-group
  14. Description
  15. -----------
  16. A control for displaying plain text. It gives you control over the horizontal and vertical alignment and can wrap the text inside the node's bounding rectangle. It doesn't support bold, italics, or other rich text formatting. For that, use :ref:`RichTextLabel<class_RichTextLabel>` instead.
  17. .. rst-class:: classref-introduction-group
  18. Tutorials
  19. ---------
  20. - `2D Dodge The Creeps Demo <https://godotengine.org/asset-library/asset/2712>`__
  21. .. rst-class:: classref-reftable-group
  22. Properties
  23. ----------
  24. .. table::
  25. :widths: auto
  26. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  27. | :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` | :ref:`autowrap_mode<class_Label_property_autowrap_mode>` | ``0`` |
  28. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  29. | :ref:`bool<class_bool>` | :ref:`clip_text<class_Label_property_clip_text>` | ``false`` |
  30. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  31. | :ref:`String<class_String>` | :ref:`ellipsis_char<class_Label_property_ellipsis_char>` | ``"โ€ฆ"`` |
  32. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  33. | :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` | :ref:`horizontal_alignment<class_Label_property_horizontal_alignment>` | ``0`` |
  34. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  35. | |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\] | :ref:`justification_flags<class_Label_property_justification_flags>` | ``163`` |
  36. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  37. | :ref:`LabelSettings<class_LabelSettings>` | :ref:`label_settings<class_Label_property_label_settings>` | |
  38. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  39. | :ref:`String<class_String>` | :ref:`language<class_Label_property_language>` | ``""`` |
  40. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  41. | :ref:`int<class_int>` | :ref:`lines_skipped<class_Label_property_lines_skipped>` | ``0`` |
  42. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  43. | :ref:`int<class_int>` | :ref:`max_lines_visible<class_Label_property_max_lines_visible>` | ``-1`` |
  44. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  45. | :ref:`MouseFilter<enum_Control_MouseFilter>` | mouse_filter | ``2`` (overrides :ref:`Control<class_Control_property_mouse_filter>`) |
  46. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  47. | :ref:`String<class_String>` | :ref:`paragraph_separator<class_Label_property_paragraph_separator>` | ``"\\n"`` |
  48. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  49. | |bitfield|\[:ref:`SizeFlags<enum_Control_SizeFlags>`\] | size_flags_vertical | ``4`` (overrides :ref:`Control<class_Control_property_size_flags_vertical>`) |
  50. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  51. | :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_Label_property_structured_text_bidi_override>` | ``0`` |
  52. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  53. | :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_Label_property_structured_text_bidi_override_options>` | ``[]`` |
  54. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  55. | :ref:`PackedFloat32Array<class_PackedFloat32Array>` | :ref:`tab_stops<class_Label_property_tab_stops>` | ``PackedFloat32Array()`` |
  56. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  57. | :ref:`String<class_String>` | :ref:`text<class_Label_property_text>` | ``""`` |
  58. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  59. | :ref:`TextDirection<enum_Control_TextDirection>` | :ref:`text_direction<class_Label_property_text_direction>` | ``0`` |
  60. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  61. | :ref:`OverrunBehavior<enum_TextServer_OverrunBehavior>` | :ref:`text_overrun_behavior<class_Label_property_text_overrun_behavior>` | ``0`` |
  62. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  63. | :ref:`bool<class_bool>` | :ref:`uppercase<class_Label_property_uppercase>` | ``false`` |
  64. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  65. | :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` | :ref:`vertical_alignment<class_Label_property_vertical_alignment>` | ``0`` |
  66. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  67. | :ref:`int<class_int>` | :ref:`visible_characters<class_Label_property_visible_characters>` | ``-1`` |
  68. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  69. | :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` | :ref:`visible_characters_behavior<class_Label_property_visible_characters_behavior>` | ``0`` |
  70. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  71. | :ref:`float<class_float>` | :ref:`visible_ratio<class_Label_property_visible_ratio>` | ``1.0`` |
  72. +-----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+
  73. .. rst-class:: classref-reftable-group
  74. Methods
  75. -------
  76. .. table::
  77. :widths: auto
  78. +---------------------------+-----------------------------------------------------------------------------------------------------------------+
  79. | :ref:`Rect2<class_Rect2>` | :ref:`get_character_bounds<class_Label_method_get_character_bounds>`\ (\ pos\: :ref:`int<class_int>`\ ) |const| |
  80. +---------------------------+-----------------------------------------------------------------------------------------------------------------+
  81. | :ref:`int<class_int>` | :ref:`get_line_count<class_Label_method_get_line_count>`\ (\ ) |const| |
  82. +---------------------------+-----------------------------------------------------------------------------------------------------------------+
  83. | :ref:`int<class_int>` | :ref:`get_line_height<class_Label_method_get_line_height>`\ (\ line\: :ref:`int<class_int>` = -1\ ) |const| |
  84. +---------------------------+-----------------------------------------------------------------------------------------------------------------+
  85. | :ref:`int<class_int>` | :ref:`get_total_character_count<class_Label_method_get_total_character_count>`\ (\ ) |const| |
  86. +---------------------------+-----------------------------------------------------------------------------------------------------------------+
  87. | :ref:`int<class_int>` | :ref:`get_visible_line_count<class_Label_method_get_visible_line_count>`\ (\ ) |const| |
  88. +---------------------------+-----------------------------------------------------------------------------------------------------------------+
  89. .. rst-class:: classref-reftable-group
  90. Theme Properties
  91. ----------------
  92. .. table::
  93. :widths: auto
  94. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  95. | :ref:`Color<class_Color>` | :ref:`font_color<class_Label_theme_color_font_color>` | ``Color(1, 1, 1, 1)`` |
  96. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  97. | :ref:`Color<class_Color>` | :ref:`font_outline_color<class_Label_theme_color_font_outline_color>` | ``Color(0, 0, 0, 1)`` |
  98. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  99. | :ref:`Color<class_Color>` | :ref:`font_shadow_color<class_Label_theme_color_font_shadow_color>` | ``Color(0, 0, 0, 0)`` |
  100. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  101. | :ref:`int<class_int>` | :ref:`line_spacing<class_Label_theme_constant_line_spacing>` | ``3`` |
  102. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  103. | :ref:`int<class_int>` | :ref:`outline_size<class_Label_theme_constant_outline_size>` | ``0`` |
  104. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  105. | :ref:`int<class_int>` | :ref:`paragraph_spacing<class_Label_theme_constant_paragraph_spacing>` | ``0`` |
  106. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  107. | :ref:`int<class_int>` | :ref:`shadow_offset_x<class_Label_theme_constant_shadow_offset_x>` | ``1`` |
  108. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  109. | :ref:`int<class_int>` | :ref:`shadow_offset_y<class_Label_theme_constant_shadow_offset_y>` | ``1`` |
  110. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  111. | :ref:`int<class_int>` | :ref:`shadow_outline_size<class_Label_theme_constant_shadow_outline_size>` | ``1`` |
  112. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  113. | :ref:`Font<class_Font>` | :ref:`font<class_Label_theme_font_font>` | |
  114. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  115. | :ref:`int<class_int>` | :ref:`font_size<class_Label_theme_font_size_font_size>` | |
  116. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  117. | :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_Label_theme_style_normal>` | |
  118. +---------------------------------+----------------------------------------------------------------------------+-----------------------+
  119. .. rst-class:: classref-section-separator
  120. ----
  121. .. rst-class:: classref-descriptions-group
  122. Property Descriptions
  123. ---------------------
  124. .. _class_Label_property_autowrap_mode:
  125. .. rst-class:: classref-property
  126. :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **autowrap_mode** = ``0`` :ref:`๐Ÿ”—<class_Label_property_autowrap_mode>`
  127. .. rst-class:: classref-property-setget
  128. - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`\ )
  129. - :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **get_autowrap_mode**\ (\ )
  130. If set to something other than :ref:`TextServer.AUTOWRAP_OFF<class_TextServer_constant_AUTOWRAP_OFF>`, the text gets wrapped inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text. To see how each mode behaves, see :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`.
  131. .. rst-class:: classref-item-separator
  132. ----
  133. .. _class_Label_property_clip_text:
  134. .. rst-class:: classref-property
  135. :ref:`bool<class_bool>` **clip_text** = ``false`` :ref:`๐Ÿ”—<class_Label_property_clip_text>`
  136. .. rst-class:: classref-property-setget
  137. - |void| **set_clip_text**\ (\ value\: :ref:`bool<class_bool>`\ )
  138. - :ref:`bool<class_bool>` **is_clipping_text**\ (\ )
  139. If ``true``, the Label only shows the text that fits inside its bounding rectangle and will clip text horizontally.
  140. .. rst-class:: classref-item-separator
  141. ----
  142. .. _class_Label_property_ellipsis_char:
  143. .. rst-class:: classref-property
  144. :ref:`String<class_String>` **ellipsis_char** = ``"โ€ฆ"`` :ref:`๐Ÿ”—<class_Label_property_ellipsis_char>`
  145. .. rst-class:: classref-property-setget
  146. - |void| **set_ellipsis_char**\ (\ value\: :ref:`String<class_String>`\ )
  147. - :ref:`String<class_String>` **get_ellipsis_char**\ (\ )
  148. Ellipsis character used for text clipping.
  149. .. rst-class:: classref-item-separator
  150. ----
  151. .. _class_Label_property_horizontal_alignment:
  152. .. rst-class:: classref-property
  153. :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` **horizontal_alignment** = ``0`` :ref:`๐Ÿ”—<class_Label_property_horizontal_alignment>`
  154. .. rst-class:: classref-property-setget
  155. - |void| **set_horizontal_alignment**\ (\ value\: :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>`\ )
  156. - :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` **get_horizontal_alignment**\ (\ )
  157. Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. Set it to one of the :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` constants.
  158. .. rst-class:: classref-item-separator
  159. ----
  160. .. _class_Label_property_justification_flags:
  161. .. rst-class:: classref-property
  162. |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\] **justification_flags** = ``163`` :ref:`๐Ÿ”—<class_Label_property_justification_flags>`
  163. .. rst-class:: classref-property-setget
  164. - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\]\ )
  165. - |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\] **get_justification_flags**\ (\ )
  166. Line fill alignment rules. See :ref:`JustificationFlag<enum_TextServer_JustificationFlag>` for more information.
  167. .. rst-class:: classref-item-separator
  168. ----
  169. .. _class_Label_property_label_settings:
  170. .. rst-class:: classref-property
  171. :ref:`LabelSettings<class_LabelSettings>` **label_settings** :ref:`๐Ÿ”—<class_Label_property_label_settings>`
  172. .. rst-class:: classref-property-setget
  173. - |void| **set_label_settings**\ (\ value\: :ref:`LabelSettings<class_LabelSettings>`\ )
  174. - :ref:`LabelSettings<class_LabelSettings>` **get_label_settings**\ (\ )
  175. A :ref:`LabelSettings<class_LabelSettings>` resource that can be shared between multiple **Label** nodes. Takes priority over theme properties.
  176. .. rst-class:: classref-item-separator
  177. ----
  178. .. _class_Label_property_language:
  179. .. rst-class:: classref-property
  180. :ref:`String<class_String>` **language** = ``""`` :ref:`๐Ÿ”—<class_Label_property_language>`
  181. .. rst-class:: classref-property-setget
  182. - |void| **set_language**\ (\ value\: :ref:`String<class_String>`\ )
  183. - :ref:`String<class_String>` **get_language**\ (\ )
  184. Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead.
  185. .. rst-class:: classref-item-separator
  186. ----
  187. .. _class_Label_property_lines_skipped:
  188. .. rst-class:: classref-property
  189. :ref:`int<class_int>` **lines_skipped** = ``0`` :ref:`๐Ÿ”—<class_Label_property_lines_skipped>`
  190. .. rst-class:: classref-property-setget
  191. - |void| **set_lines_skipped**\ (\ value\: :ref:`int<class_int>`\ )
  192. - :ref:`int<class_int>` **get_lines_skipped**\ (\ )
  193. The number of the lines ignored and not displayed from the start of the :ref:`text<class_Label_property_text>` value.
  194. .. rst-class:: classref-item-separator
  195. ----
  196. .. _class_Label_property_max_lines_visible:
  197. .. rst-class:: classref-property
  198. :ref:`int<class_int>` **max_lines_visible** = ``-1`` :ref:`๐Ÿ”—<class_Label_property_max_lines_visible>`
  199. .. rst-class:: classref-property-setget
  200. - |void| **set_max_lines_visible**\ (\ value\: :ref:`int<class_int>`\ )
  201. - :ref:`int<class_int>` **get_max_lines_visible**\ (\ )
  202. Limits the lines of text the node shows on screen.
  203. .. rst-class:: classref-item-separator
  204. ----
  205. .. _class_Label_property_paragraph_separator:
  206. .. rst-class:: classref-property
  207. :ref:`String<class_String>` **paragraph_separator** = ``"\\n"`` :ref:`๐Ÿ”—<class_Label_property_paragraph_separator>`
  208. .. rst-class:: classref-property-setget
  209. - |void| **set_paragraph_separator**\ (\ value\: :ref:`String<class_String>`\ )
  210. - :ref:`String<class_String>` **get_paragraph_separator**\ (\ )
  211. String used as a paragraph separator. Each paragraph is processed independently, in its own BiDi context.
  212. .. rst-class:: classref-item-separator
  213. ----
  214. .. _class_Label_property_structured_text_bidi_override:
  215. .. rst-class:: classref-property
  216. :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **structured_text_bidi_override** = ``0`` :ref:`๐Ÿ”—<class_Label_property_structured_text_bidi_override>`
  217. .. rst-class:: classref-property-setget
  218. - |void| **set_structured_text_bidi_override**\ (\ value\: :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>`\ )
  219. - :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **get_structured_text_bidi_override**\ (\ )
  220. Set BiDi algorithm override for the structured text.
  221. .. rst-class:: classref-item-separator
  222. ----
  223. .. _class_Label_property_structured_text_bidi_override_options:
  224. .. rst-class:: classref-property
  225. :ref:`Array<class_Array>` **structured_text_bidi_override_options** = ``[]`` :ref:`๐Ÿ”—<class_Label_property_structured_text_bidi_override_options>`
  226. .. rst-class:: classref-property-setget
  227. - |void| **set_structured_text_bidi_override_options**\ (\ value\: :ref:`Array<class_Array>`\ )
  228. - :ref:`Array<class_Array>` **get_structured_text_bidi_override_options**\ (\ )
  229. Set additional options for BiDi override.
  230. .. rst-class:: classref-item-separator
  231. ----
  232. .. _class_Label_property_tab_stops:
  233. .. rst-class:: classref-property
  234. :ref:`PackedFloat32Array<class_PackedFloat32Array>` **tab_stops** = ``PackedFloat32Array()`` :ref:`๐Ÿ”—<class_Label_property_tab_stops>`
  235. .. rst-class:: classref-property-setget
  236. - |void| **set_tab_stops**\ (\ value\: :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ )
  237. - :ref:`PackedFloat32Array<class_PackedFloat32Array>` **get_tab_stops**\ (\ )
  238. Aligns text to the given tab-stops.
  239. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedFloat32Array<class_PackedFloat32Array>` for more details.
  240. .. rst-class:: classref-item-separator
  241. ----
  242. .. _class_Label_property_text:
  243. .. rst-class:: classref-property
  244. :ref:`String<class_String>` **text** = ``""`` :ref:`๐Ÿ”—<class_Label_property_text>`
  245. .. rst-class:: classref-property-setget
  246. - |void| **set_text**\ (\ value\: :ref:`String<class_String>`\ )
  247. - :ref:`String<class_String>` **get_text**\ (\ )
  248. The text to display on screen.
  249. .. rst-class:: classref-item-separator
  250. ----
  251. .. _class_Label_property_text_direction:
  252. .. rst-class:: classref-property
  253. :ref:`TextDirection<enum_Control_TextDirection>` **text_direction** = ``0`` :ref:`๐Ÿ”—<class_Label_property_text_direction>`
  254. .. rst-class:: classref-property-setget
  255. - |void| **set_text_direction**\ (\ value\: :ref:`TextDirection<enum_Control_TextDirection>`\ )
  256. - :ref:`TextDirection<enum_Control_TextDirection>` **get_text_direction**\ (\ )
  257. Base text writing direction.
  258. .. rst-class:: classref-item-separator
  259. ----
  260. .. _class_Label_property_text_overrun_behavior:
  261. .. rst-class:: classref-property
  262. :ref:`OverrunBehavior<enum_TextServer_OverrunBehavior>` **text_overrun_behavior** = ``0`` :ref:`๐Ÿ”—<class_Label_property_text_overrun_behavior>`
  263. .. rst-class:: classref-property-setget
  264. - |void| **set_text_overrun_behavior**\ (\ value\: :ref:`OverrunBehavior<enum_TextServer_OverrunBehavior>`\ )
  265. - :ref:`OverrunBehavior<enum_TextServer_OverrunBehavior>` **get_text_overrun_behavior**\ (\ )
  266. Sets the clipping behavior when the text exceeds the node's bounding rectangle. See :ref:`OverrunBehavior<enum_TextServer_OverrunBehavior>` for a description of all modes.
  267. .. rst-class:: classref-item-separator
  268. ----
  269. .. _class_Label_property_uppercase:
  270. .. rst-class:: classref-property
  271. :ref:`bool<class_bool>` **uppercase** = ``false`` :ref:`๐Ÿ”—<class_Label_property_uppercase>`
  272. .. rst-class:: classref-property-setget
  273. - |void| **set_uppercase**\ (\ value\: :ref:`bool<class_bool>`\ )
  274. - :ref:`bool<class_bool>` **is_uppercase**\ (\ )
  275. If ``true``, all the text displays as UPPERCASE.
  276. .. rst-class:: classref-item-separator
  277. ----
  278. .. _class_Label_property_vertical_alignment:
  279. .. rst-class:: classref-property
  280. :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` **vertical_alignment** = ``0`` :ref:`๐Ÿ”—<class_Label_property_vertical_alignment>`
  281. .. rst-class:: classref-property-setget
  282. - |void| **set_vertical_alignment**\ (\ value\: :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>`\ )
  283. - :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` **get_vertical_alignment**\ (\ )
  284. Controls the text's vertical alignment. Supports top, center, bottom, and fill. Set it to one of the :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` constants.
  285. .. rst-class:: classref-item-separator
  286. ----
  287. .. _class_Label_property_visible_characters:
  288. .. rst-class:: classref-property
  289. :ref:`int<class_int>` **visible_characters** = ``-1`` :ref:`๐Ÿ”—<class_Label_property_visible_characters>`
  290. .. rst-class:: classref-property-setget
  291. - |void| **set_visible_characters**\ (\ value\: :ref:`int<class_int>`\ )
  292. - :ref:`int<class_int>` **get_visible_characters**\ (\ )
  293. The number of characters to display. If set to ``-1``, all characters are displayed. This can be useful when animating the text appearing in a dialog box.
  294. \ **Note:** Setting this property updates :ref:`visible_ratio<class_Label_property_visible_ratio>` accordingly.
  295. .. rst-class:: classref-item-separator
  296. ----
  297. .. _class_Label_property_visible_characters_behavior:
  298. .. rst-class:: classref-property
  299. :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` **visible_characters_behavior** = ``0`` :ref:`๐Ÿ”—<class_Label_property_visible_characters_behavior>`
  300. .. rst-class:: classref-property-setget
  301. - |void| **set_visible_characters_behavior**\ (\ value\: :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>`\ )
  302. - :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` **get_visible_characters_behavior**\ (\ )
  303. Sets the clipping behavior when :ref:`visible_characters<class_Label_property_visible_characters>` or :ref:`visible_ratio<class_Label_property_visible_ratio>` is set. See :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` for more info.
  304. .. rst-class:: classref-item-separator
  305. ----
  306. .. _class_Label_property_visible_ratio:
  307. .. rst-class:: classref-property
  308. :ref:`float<class_float>` **visible_ratio** = ``1.0`` :ref:`๐Ÿ”—<class_Label_property_visible_ratio>`
  309. .. rst-class:: classref-property-setget
  310. - |void| **set_visible_ratio**\ (\ value\: :ref:`float<class_float>`\ )
  311. - :ref:`float<class_float>` **get_visible_ratio**\ (\ )
  312. The fraction of characters to display, relative to the total number of characters (see :ref:`get_total_character_count()<class_Label_method_get_total_character_count>`). If set to ``1.0``, all characters are displayed. If set to ``0.5``, only half of the characters will be displayed. This can be useful when animating the text appearing in a dialog box.
  313. \ **Note:** Setting this property updates :ref:`visible_characters<class_Label_property_visible_characters>` accordingly.
  314. .. rst-class:: classref-section-separator
  315. ----
  316. .. rst-class:: classref-descriptions-group
  317. Method Descriptions
  318. -------------------
  319. .. _class_Label_method_get_character_bounds:
  320. .. rst-class:: classref-method
  321. :ref:`Rect2<class_Rect2>` **get_character_bounds**\ (\ pos\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_Label_method_get_character_bounds>`
  322. Returns the bounding rectangle of the character at position ``pos`` in the label's local coordinate system. If the character is a non-visual character or ``pos`` is outside the valid range, an empty :ref:`Rect2<class_Rect2>` is returned. If the character is a part of a composite grapheme, the bounding rectangle of the whole grapheme is returned.
  323. .. rst-class:: classref-item-separator
  324. ----
  325. .. _class_Label_method_get_line_count:
  326. .. rst-class:: classref-method
  327. :ref:`int<class_int>` **get_line_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_Label_method_get_line_count>`
  328. Returns the number of lines of text the Label has.
  329. .. rst-class:: classref-item-separator
  330. ----
  331. .. _class_Label_method_get_line_height:
  332. .. rst-class:: classref-method
  333. :ref:`int<class_int>` **get_line_height**\ (\ line\: :ref:`int<class_int>` = -1\ ) |const| :ref:`๐Ÿ”—<class_Label_method_get_line_height>`
  334. Returns the height of the line ``line``.
  335. If ``line`` is set to ``-1``, returns the biggest line height.
  336. If there are no lines, returns font size in pixels.
  337. .. rst-class:: classref-item-separator
  338. ----
  339. .. _class_Label_method_get_total_character_count:
  340. .. rst-class:: classref-method
  341. :ref:`int<class_int>` **get_total_character_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_Label_method_get_total_character_count>`
  342. Returns the total number of printable characters in the text (excluding spaces and newlines).
  343. .. rst-class:: classref-item-separator
  344. ----
  345. .. _class_Label_method_get_visible_line_count:
  346. .. rst-class:: classref-method
  347. :ref:`int<class_int>` **get_visible_line_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_Label_method_get_visible_line_count>`
  348. Returns the number of lines shown. Useful if the **Label**'s height cannot currently display all lines.
  349. .. rst-class:: classref-section-separator
  350. ----
  351. .. rst-class:: classref-descriptions-group
  352. Theme Property Descriptions
  353. ---------------------------
  354. .. _class_Label_theme_color_font_color:
  355. .. rst-class:: classref-themeproperty
  356. :ref:`Color<class_Color>` **font_color** = ``Color(1, 1, 1, 1)`` :ref:`๐Ÿ”—<class_Label_theme_color_font_color>`
  357. Default text :ref:`Color<class_Color>` of the **Label**.
  358. .. rst-class:: classref-item-separator
  359. ----
  360. .. _class_Label_theme_color_font_outline_color:
  361. .. rst-class:: classref-themeproperty
  362. :ref:`Color<class_Color>` **font_outline_color** = ``Color(0, 0, 0, 1)`` :ref:`๐Ÿ”—<class_Label_theme_color_font_outline_color>`
  363. The color of text outline.
  364. .. rst-class:: classref-item-separator
  365. ----
  366. .. _class_Label_theme_color_font_shadow_color:
  367. .. rst-class:: classref-themeproperty
  368. :ref:`Color<class_Color>` **font_shadow_color** = ``Color(0, 0, 0, 0)`` :ref:`๐Ÿ”—<class_Label_theme_color_font_shadow_color>`
  369. :ref:`Color<class_Color>` of the text's shadow effect.
  370. .. rst-class:: classref-item-separator
  371. ----
  372. .. _class_Label_theme_constant_line_spacing:
  373. .. rst-class:: classref-themeproperty
  374. :ref:`int<class_int>` **line_spacing** = ``3`` :ref:`๐Ÿ”—<class_Label_theme_constant_line_spacing>`
  375. Additional vertical spacing between lines (in pixels), spacing is added to line descent. This value can be negative.
  376. .. rst-class:: classref-item-separator
  377. ----
  378. .. _class_Label_theme_constant_outline_size:
  379. .. rst-class:: classref-themeproperty
  380. :ref:`int<class_int>` **outline_size** = ``0`` :ref:`๐Ÿ”—<class_Label_theme_constant_outline_size>`
  381. Text outline size.
  382. \ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_Label_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
  383. \ **Note:** Using a value that is larger than half the font size is not recommended, as the font outline may fail to be fully closed in this case.
  384. .. rst-class:: classref-item-separator
  385. ----
  386. .. _class_Label_theme_constant_paragraph_spacing:
  387. .. rst-class:: classref-themeproperty
  388. :ref:`int<class_int>` **paragraph_spacing** = ``0`` :ref:`๐Ÿ”—<class_Label_theme_constant_paragraph_spacing>`
  389. Vertical space between paragraphs. Added on top of :ref:`line_spacing<class_Label_theme_constant_line_spacing>`.
  390. .. rst-class:: classref-item-separator
  391. ----
  392. .. _class_Label_theme_constant_shadow_offset_x:
  393. .. rst-class:: classref-themeproperty
  394. :ref:`int<class_int>` **shadow_offset_x** = ``1`` :ref:`๐Ÿ”—<class_Label_theme_constant_shadow_offset_x>`
  395. The horizontal offset of the text's shadow.
  396. .. rst-class:: classref-item-separator
  397. ----
  398. .. _class_Label_theme_constant_shadow_offset_y:
  399. .. rst-class:: classref-themeproperty
  400. :ref:`int<class_int>` **shadow_offset_y** = ``1`` :ref:`๐Ÿ”—<class_Label_theme_constant_shadow_offset_y>`
  401. The vertical offset of the text's shadow.
  402. .. rst-class:: classref-item-separator
  403. ----
  404. .. _class_Label_theme_constant_shadow_outline_size:
  405. .. rst-class:: classref-themeproperty
  406. :ref:`int<class_int>` **shadow_outline_size** = ``1`` :ref:`๐Ÿ”—<class_Label_theme_constant_shadow_outline_size>`
  407. The size of the shadow outline.
  408. .. rst-class:: classref-item-separator
  409. ----
  410. .. _class_Label_theme_font_font:
  411. .. rst-class:: classref-themeproperty
  412. :ref:`Font<class_Font>` **font** :ref:`๐Ÿ”—<class_Label_theme_font_font>`
  413. :ref:`Font<class_Font>` used for the **Label**'s text.
  414. .. rst-class:: classref-item-separator
  415. ----
  416. .. _class_Label_theme_font_size_font_size:
  417. .. rst-class:: classref-themeproperty
  418. :ref:`int<class_int>` **font_size** :ref:`๐Ÿ”—<class_Label_theme_font_size_font_size>`
  419. Font size of the **Label**'s text.
  420. .. rst-class:: classref-item-separator
  421. ----
  422. .. _class_Label_theme_style_normal:
  423. .. rst-class:: classref-themeproperty
  424. :ref:`StyleBox<class_StyleBox>` **normal** :ref:`๐Ÿ”—<class_Label_theme_style_normal>`
  425. Background :ref:`StyleBox<class_StyleBox>` for the **Label**.
  426. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  427. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  428. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  429. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  430. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  431. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  432. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  433. .. |void| replace:: :abbr:`void (No return value.)`