mirror of
https://github.com/godotengine/godot-docs.git
synced 2025-12-31 17:49:03 +03:00
403 lines
19 KiB
ReStructuredText
403 lines
19 KiB
ReStructuredText
: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 a :ref:`PrimitiveMesh<class_PrimitiveMesh>` from the text.
|
|
|
|
.. rst-class:: classref-introduction-group
|
|
|
|
Description
|
|
-----------
|
|
|
|
Generate a :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.
|
|
|
|
.. 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.
|
|
|
|
.. 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.
|
|
|
|
.. 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, and bottom.
|
|
|
|
.. 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.)`
|
|
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
|
|
.. |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.)`
|