class_label.rst 33 KB

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