123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402 |
- :github_url: hide
- .. DO NOT EDIT THIS FILE!!!
- .. Generated automatically from Godot engine sources.
- .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
- .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/TextMesh.xml.
- .. _class_TextMesh:
- TextMesh
- ========
- **Inherits:** :ref:`PrimitiveMesh<class_PrimitiveMesh>` **<** :ref:`Mesh<class_Mesh>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
- Generate an :ref:`PrimitiveMesh<class_PrimitiveMesh>` from the text.
- .. rst-class:: classref-introduction-group
- Description
- -----------
- Generate an :ref:`PrimitiveMesh<class_PrimitiveMesh>` from the text.
- TextMesh can be generated only when using dynamic fonts with vector glyph contours. Bitmap fonts (including bitmap data in the TrueType/OpenType containers, like color emoji fonts) are not supported.
- The UV layout is arranged in 4 horizontal strips, top to bottom: 40% of the height for the front face, 40% for the back face, 10% for the outer edges and 10% for the inner edges.
- .. rst-class:: classref-introduction-group
- Tutorials
- ---------
- - :doc:`3D text <../tutorials/3d/3d_text>`
- .. rst-class:: classref-reftable-group
- Properties
- ----------
- .. table::
- :widths: auto
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` | :ref:`autowrap_mode<class_TextMesh_property_autowrap_mode>` | ``0`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`float<class_float>` | :ref:`curve_step<class_TextMesh_property_curve_step>` | ``0.5`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`float<class_float>` | :ref:`depth<class_TextMesh_property_depth>` | ``0.05`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`Font<class_Font>` | :ref:`font<class_TextMesh_property_font>` | |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`int<class_int>` | :ref:`font_size<class_TextMesh_property_font_size>` | ``16`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` | :ref:`horizontal_alignment<class_TextMesh_property_horizontal_alignment>` | ``1`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\] | :ref:`justification_flags<class_TextMesh_property_justification_flags>` | ``163`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`String<class_String>` | :ref:`language<class_TextMesh_property_language>` | ``""`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`float<class_float>` | :ref:`line_spacing<class_TextMesh_property_line_spacing>` | ``0.0`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`Vector2<class_Vector2>` | :ref:`offset<class_TextMesh_property_offset>` | ``Vector2(0, 0)`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`float<class_float>` | :ref:`pixel_size<class_TextMesh_property_pixel_size>` | ``0.01`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_TextMesh_property_structured_text_bidi_override>` | ``0`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_TextMesh_property_structured_text_bidi_override_options>` | ``[]`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`String<class_String>` | :ref:`text<class_TextMesh_property_text>` | ``""`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`Direction<enum_TextServer_Direction>` | :ref:`text_direction<class_TextMesh_property_text_direction>` | ``0`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`bool<class_bool>` | :ref:`uppercase<class_TextMesh_property_uppercase>` | ``false`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` | :ref:`vertical_alignment<class_TextMesh_property_vertical_alignment>` | ``1`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`float<class_float>` | :ref:`width<class_TextMesh_property_width>` | ``500.0`` |
- +---------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------+
- .. rst-class:: classref-section-separator
- ----
- .. rst-class:: classref-descriptions-group
- Property Descriptions
- ---------------------
- .. _class_TextMesh_property_autowrap_mode:
- .. rst-class:: classref-property
- :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **autowrap_mode** = ``0`` :ref:`🔗<class_TextMesh_property_autowrap_mode>`
- .. rst-class:: classref-property-setget
- - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`\ )
- - :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **get_autowrap_mode**\ (\ )
- 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>`.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_curve_step:
- .. rst-class:: classref-property
- :ref:`float<class_float>` **curve_step** = ``0.5`` :ref:`🔗<class_TextMesh_property_curve_step>`
- .. rst-class:: classref-property-setget
- - |void| **set_curve_step**\ (\ value\: :ref:`float<class_float>`\ )
- - :ref:`float<class_float>` **get_curve_step**\ (\ )
- Step (in pixels) used to approximate Bézier curves.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_depth:
- .. rst-class:: classref-property
- :ref:`float<class_float>` **depth** = ``0.05`` :ref:`🔗<class_TextMesh_property_depth>`
- .. rst-class:: classref-property-setget
- - |void| **set_depth**\ (\ value\: :ref:`float<class_float>`\ )
- - :ref:`float<class_float>` **get_depth**\ (\ )
- Depths of the mesh, if set to ``0.0`` only front surface, is generated, and UV layout is changed to use full texture for the front face only.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_font:
- .. rst-class:: classref-property
- :ref:`Font<class_Font>` **font** :ref:`🔗<class_TextMesh_property_font>`
- .. rst-class:: classref-property-setget
- - |void| **set_font**\ (\ value\: :ref:`Font<class_Font>`\ )
- - :ref:`Font<class_Font>` **get_font**\ (\ )
- Font configuration used to display text.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_font_size:
- .. rst-class:: classref-property
- :ref:`int<class_int>` **font_size** = ``16`` :ref:`🔗<class_TextMesh_property_font_size>`
- .. rst-class:: classref-property-setget
- - |void| **set_font_size**\ (\ value\: :ref:`int<class_int>`\ )
- - :ref:`int<class_int>` **get_font_size**\ (\ )
- Font size of the **TextMesh**'s text.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_horizontal_alignment:
- .. rst-class:: classref-property
- :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` **horizontal_alignment** = ``1`` :ref:`🔗<class_TextMesh_property_horizontal_alignment>`
- .. rst-class:: classref-property-setget
- - |void| **set_horizontal_alignment**\ (\ value\: :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>`\ )
- - :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` **get_horizontal_alignment**\ (\ )
- 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.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_justification_flags:
- .. rst-class:: classref-property
- |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\] **justification_flags** = ``163`` :ref:`🔗<class_TextMesh_property_justification_flags>`
- .. rst-class:: classref-property-setget
- - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\]\ )
- - |bitfield|\[:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\] **get_justification_flags**\ (\ )
- Line fill alignment rules. See :ref:`JustificationFlag<enum_TextServer_JustificationFlag>` for more information.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_language:
- .. rst-class:: classref-property
- :ref:`String<class_String>` **language** = ``""`` :ref:`🔗<class_TextMesh_property_language>`
- .. rst-class:: classref-property-setget
- - |void| **set_language**\ (\ value\: :ref:`String<class_String>`\ )
- - :ref:`String<class_String>` **get_language**\ (\ )
- Language code used for text shaping algorithms, if left empty current locale is used instead.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_line_spacing:
- .. rst-class:: classref-property
- :ref:`float<class_float>` **line_spacing** = ``0.0`` :ref:`🔗<class_TextMesh_property_line_spacing>`
- .. rst-class:: classref-property-setget
- - |void| **set_line_spacing**\ (\ value\: :ref:`float<class_float>`\ )
- - :ref:`float<class_float>` **get_line_spacing**\ (\ )
- Additional vertical spacing between lines (in pixels), spacing is added to line descent. This value can be negative.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_offset:
- .. rst-class:: classref-property
- :ref:`Vector2<class_Vector2>` **offset** = ``Vector2(0, 0)`` :ref:`🔗<class_TextMesh_property_offset>`
- .. rst-class:: classref-property-setget
- - |void| **set_offset**\ (\ value\: :ref:`Vector2<class_Vector2>`\ )
- - :ref:`Vector2<class_Vector2>` **get_offset**\ (\ )
- The text drawing offset (in pixels).
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_pixel_size:
- .. rst-class:: classref-property
- :ref:`float<class_float>` **pixel_size** = ``0.01`` :ref:`🔗<class_TextMesh_property_pixel_size>`
- .. rst-class:: classref-property-setget
- - |void| **set_pixel_size**\ (\ value\: :ref:`float<class_float>`\ )
- - :ref:`float<class_float>` **get_pixel_size**\ (\ )
- The size of one pixel's width on the text to scale it in 3D.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_structured_text_bidi_override:
- .. rst-class:: classref-property
- :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **structured_text_bidi_override** = ``0`` :ref:`🔗<class_TextMesh_property_structured_text_bidi_override>`
- .. rst-class:: classref-property-setget
- - |void| **set_structured_text_bidi_override**\ (\ value\: :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>`\ )
- - :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **get_structured_text_bidi_override**\ (\ )
- Set BiDi algorithm override for the structured text.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_structured_text_bidi_override_options:
- .. rst-class:: classref-property
- :ref:`Array<class_Array>` **structured_text_bidi_override_options** = ``[]`` :ref:`🔗<class_TextMesh_property_structured_text_bidi_override_options>`
- .. rst-class:: classref-property-setget
- - |void| **set_structured_text_bidi_override_options**\ (\ value\: :ref:`Array<class_Array>`\ )
- - :ref:`Array<class_Array>` **get_structured_text_bidi_override_options**\ (\ )
- Set additional options for BiDi override.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_text:
- .. rst-class:: classref-property
- :ref:`String<class_String>` **text** = ``""`` :ref:`🔗<class_TextMesh_property_text>`
- .. rst-class:: classref-property-setget
- - |void| **set_text**\ (\ value\: :ref:`String<class_String>`\ )
- - :ref:`String<class_String>` **get_text**\ (\ )
- The text to generate mesh from.
- \ **Note:** Due to being a :ref:`Resource<class_Resource>`, it doesn't follow the rules of :ref:`Node.auto_translate_mode<class_Node_property_auto_translate_mode>`. If disabling translation is desired, it should be done manually with :ref:`Object.set_message_translation<class_Object_method_set_message_translation>`.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_text_direction:
- .. rst-class:: classref-property
- :ref:`Direction<enum_TextServer_Direction>` **text_direction** = ``0`` :ref:`🔗<class_TextMesh_property_text_direction>`
- .. rst-class:: classref-property-setget
- - |void| **set_text_direction**\ (\ value\: :ref:`Direction<enum_TextServer_Direction>`\ )
- - :ref:`Direction<enum_TextServer_Direction>` **get_text_direction**\ (\ )
- Base text writing direction.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_uppercase:
- .. rst-class:: classref-property
- :ref:`bool<class_bool>` **uppercase** = ``false`` :ref:`🔗<class_TextMesh_property_uppercase>`
- .. rst-class:: classref-property-setget
- - |void| **set_uppercase**\ (\ value\: :ref:`bool<class_bool>`\ )
- - :ref:`bool<class_bool>` **is_uppercase**\ (\ )
- If ``true``, all the text displays as UPPERCASE.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_vertical_alignment:
- .. rst-class:: classref-property
- :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` **vertical_alignment** = ``1`` :ref:`🔗<class_TextMesh_property_vertical_alignment>`
- .. rst-class:: classref-property-setget
- - |void| **set_vertical_alignment**\ (\ value\: :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>`\ )
- - :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` **get_vertical_alignment**\ (\ )
- Controls the text's vertical alignment. Supports top, center, bottom. Set it to one of the :ref:`VerticalAlignment<enum_@GlobalScope_VerticalAlignment>` constants.
- .. rst-class:: classref-item-separator
- ----
- .. _class_TextMesh_property_width:
- .. rst-class:: classref-property
- :ref:`float<class_float>` **width** = ``500.0`` :ref:`🔗<class_TextMesh_property_width>`
- .. rst-class:: classref-property-setget
- - |void| **set_width**\ (\ value\: :ref:`float<class_float>`\ )
- - :ref:`float<class_float>` **get_width**\ (\ )
- Text width (in pixels), used for fill alignment.
- .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
- .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
- .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
- .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
- .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
- .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
- .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
- .. |void| replace:: :abbr:`void (No return value.)`
|