2020-08-12 13:49:10 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
<class name= "TextServer" inherits= "Object" version= "4.0" >
<brief_description >
Interface for the fonts and complex text layouts.
</brief_description>
<description >
[TextServer] is the API backend for managing fonts, and rendering complex text.
</description>
<tutorials >
</tutorials>
<methods >
2020-12-27 14:30:33 +01:00
<method name= "create_font" >
2021-07-30 15:28:05 +02:00
<return type= "RID" />
2021-02-06 15:34:06 +01:00
<description >
2020-12-27 14:30:33 +01:00
Creates new, empty font cache entry resource. To free the resulting resourec, use [method free_rid] method.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "create_shaped_text" >
2021-07-30 15:28:05 +02:00
<return type= "RID" />
<argument index= "0" name= "direction" type= "int" enum= "TextServer.Direction" default= "0" />
<argument index= "1" name= "orientation" type= "int" enum= "TextServer.Orientation" default= "0" />
2020-08-12 13:49:10 +02:00
<description >
Creates new buffer for complex text layout, with the given [code]direction[/code] and [code]orientation[/code]. To free the resulting buffer, use [method free_rid] method.
Note: Direction is ignored if server does not support [code]FEATURE_BIDI_LAYOUT[/code] feature.
Note: Orientation is ignored if server does not support [code]FEATURE_VERTICAL_LAYOUT[/code] feature.
</description>
</method>
<method name= "draw_hex_code_box" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "canvas" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "pos" type= "Vector2" />
<argument index= "3" name= "index" type= "int" />
<argument index= "4" name= "color" type= "Color" />
2020-08-12 13:49:10 +02:00
<description >
Draws box displaying character hexadecimal code. Used for replacing missing characters.
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_clear_glyphs" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
2021-02-06 15:34:06 +01:00
<description >
2020-12-27 14:30:33 +01:00
Removes all rendered glyphs information from the cache entry. Note: This function will not remove textures associated with the glyphs, use [method font_remove_texture] to remove them manually.
2021-02-06 15:34:06 +01:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_clear_kerning_map" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
2021-02-06 15:34:06 +01:00
<description >
2020-12-27 14:30:33 +01:00
Removes all kerning overrides.
2021-02-06 15:34:06 +01:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_clear_size_cache" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<description >
Removes all font sizes from the cache entry
</description>
</method>
<method name= "font_clear_textures" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
2021-02-06 15:34:06 +01:00
<description >
2020-12-27 14:30:33 +01:00
Removes all textures from font cache entry. Note: This function will not remove glyphs associated with the texture, use [method font_remove_glyph] to remove them manually.
2021-02-06 15:34:06 +01:00
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_draw_glyph" qualifiers= "const" >
2020-12-27 14:30:33 +01:00
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "canvas" type= "RID" />
<argument index= "2" name= "size" type= "int" />
<argument index= "3" name= "pos" type= "Vector2" />
<argument index= "4" name= "index" type= "int" />
<argument index= "5" name= "color" type= "Color" default= "Color(1, 1, 1, 1)" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Draws single glyph into a canvas item at the position, using [code]font_rid[/code] at the size [code]size[/code].
2020-08-12 13:49:10 +02:00
Note: Glyph index is specific to the font, use glyphs indices returned by [method shaped_text_get_glyphs] or [method font_get_glyph_index].
</description>
</method>
<method name= "font_draw_glyph_outline" qualifiers= "const" >
2020-12-27 14:30:33 +01:00
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "canvas" type= "RID" />
<argument index= "2" name= "size" type= "int" />
<argument index= "3" name= "outline_size" type= "int" />
<argument index= "4" name= "pos" type= "Vector2" />
<argument index= "5" name= "index" type= "int" />
<argument index= "6" name= "color" type= "Color" default= "Color(1, 1, 1, 1)" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Draws single glyph outline of size [code]outline_size[/code] into a canvas item at the position, using [code]font_rid[/code] at the size [code]size[/code].
2020-08-12 13:49:10 +02:00
Note: Glyph index is specific to the font, use glyphs indices returned by [method shaped_text_get_glyphs] or [method font_get_glyph_index].
</description>
</method>
<method name= "font_get_ascent" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "size" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns the font ascent (number of pixels above the baseline).
</description>
</method>
<method name= "font_get_descent" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "size" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns the font descent (number of pixels below the baseline).
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_fixed_size" qualifiers= "const" >
<return type= "int" />
<argument index= "0" name= "font_rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns bitmap font fixed size.
2020-08-12 13:49:10 +02:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_global_oversampling" qualifiers= "const" >
<return type= "float" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns the font oversampling factor, shared by all fonts in the TextServer.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_get_glyph_advance" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Vector2" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "glyph" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns glyph advance (offset of the next glyph). Note: advance for glyphs outlines is the same as the base glyph advance and is not saved.
2020-08-12 13:49:10 +02:00
</description>
</method>
2020-12-10 16:30:25 +01:00
<method name= "font_get_glyph_contours" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Dictionary" />
<argument index= "0" name= "font" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "index" type= "int" />
2020-12-10 16:30:25 +01:00
<description >
2020-12-27 14:30:33 +01:00
Returns outline contours of the glyph as a [code]Dictionary[/code] with the following contents:
2020-12-10 16:30:25 +01:00
[code]points[/code] - [PackedVector3Array], containing outline points. [code]x[/code] and [code]y[/code] are point coordinates. [code]z[/code] is the type of the point, using the [enum ContourPointTag] values.
[code]contours[/code] - [PackedInt32Array], containing indices the end points of each contour.
[code]orientation[/code] - [bool], contour orientation. If [code]true[/code], clockwise contours must be filled.
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_get_glyph_index" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "char" type= "int" />
<argument index= "3" name= "variation_selector" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns the glyph index of a [code]char[/code], optionally modified by the [code]variation_selector[/code].
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_glyph_list" qualifiers= "const" >
<return type= "Array" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<description >
Returns list of rendered glyphs in the cache entry.
</description>
</method>
<method name= "font_get_glyph_offset" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Vector2" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns glyph offset from the baseline.
2020-08-12 13:49:10 +02:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_glyph_size" qualifiers= "const" >
<return type= "Vector2" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns size of the glyph.
</description>
</method>
<method name= "font_get_glyph_texture_idx" qualifiers= "const" >
<return type= "int" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
<description >
Returns index of the cache texture containing the glyph.
</description>
</method>
<method name= "font_get_glyph_uv_rect" qualifiers= "const" >
<return type= "Rect2" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
<description >
Returns rectangle in the cache texture containing the glyph.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_get_hinting" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" enum= "TextServer.Hinting" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns the font hinting mode. Used by dynamic fonts only.
</description>
</method>
<method name= "font_get_kerning" qualifiers= "const" >
<return type= "Vector2" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "glyph_pair" type= "Vector2i" />
<description >
Returns kerning for the pair of glyphs.
</description>
</method>
<method name= "font_get_kerning_list" qualifiers= "const" >
<return type= "Array" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<description >
Returns list of the kerning overrides.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_get_language_support_override" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "language" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if support override is enabled for the [code]language[/code].
</description>
</method>
<method name= "font_get_language_support_overrides" >
2021-07-30 15:28:05 +02:00
<return type= "PackedStringArray" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns list of language support overrides.
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_msdf_pixel_range" qualifiers= "const" >
<return type= "int" />
<argument index= "0" name= "font_rid" type= "RID" />
<description >
Return the width of the range around the shape between the minimum and maximum representable signed distance.
</description>
</method>
<method name= "font_get_msdf_size" qualifiers= "const" >
<return type= "int" />
<argument index= "0" name= "font_rid" type= "RID" />
<description >
Returns source font size used to generate MSDF textures.
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_get_oversampling" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns font oversampling factor, if set to [code]0.0[/code] global oversampling factor is used instead. Used by dynamic fonts only.
</description>
</method>
<method name= "font_get_scale" qualifiers= "const" >
<return type= "float" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<description >
Returns scaling factor of the color bitmap font.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_get_script_support_override" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "script" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if support override is enabled for the [code]script[/code].
</description>
</method>
<method name= "font_get_script_support_overrides" >
2021-07-30 15:28:05 +02:00
<return type= "PackedStringArray" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns list of script support overrides.
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_size_cache_list" qualifiers= "const" >
<return type= "Array" />
<argument index= "0" name= "font_rid" type= "RID" />
2021-02-15 09:46:23 +01:00
<description >
2020-12-27 14:30:33 +01:00
Return list of the font sizes in the cache. Each size is [code]Vector2i[/code] with font size and outline size.
2021-02-15 09:46:23 +01:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_spacing" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "spacing" type= "int" enum= "TextServer.SpacingType" />
2021-02-15 09:46:23 +01:00
<description >
2020-12-27 14:30:33 +01:00
Returns extra spacing added between glyphs in pixels.
2021-02-15 09:46:23 +01:00
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_get_supported_chars" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "String" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns a string containing all the characters available in the font.
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_texture_count" qualifiers= "const" >
<return type= "int" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns number of textures used by font cache entry.
2020-08-12 13:49:10 +02:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_texture_image" qualifiers= "const" >
<return type= "Image" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "texture_index" type= "int" />
<description >
Returns font cache texture image data.
</description>
</method>
<method name= "font_get_texture_offsets" qualifiers= "const" >
<return type= "PackedInt32Array" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "texture_index" type= "int" />
<description >
Returns array containing the first free pixel in the each column of texture. Should be the same size as texture width or empty.
</description>
</method>
<method name= "font_get_underline_position" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "size" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns pixel offset of the underline below the baseline.
2020-08-12 13:49:10 +02:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_underline_thickness" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
2020-10-22 18:40:18 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns thickness of the underline in pixels.
2020-10-22 18:40:18 +02:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_get_variation_coordinates" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Dictionary" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2020-10-22 18:40:18 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns variation coordinates for the specified font cache entry. See [method font_supported_variation_list] for more info.
2020-10-22 18:40:18 +02:00
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_has_char" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "char" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Return [code]true[/code] if a Unicode [code]char[/code] is available in the font.
2020-08-12 13:49:10 +02:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_is_antialiased" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<description >
Returns [code]true[/code] if font 8-bit anitialiased glyph rendering is supported and enabled.
</description>
</method>
<method name= "font_is_force_autohinter" qualifiers= "const" >
<return type= "bool" />
<argument index= "0" name= "font_rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns [code]true[/code] if auto-hinting is supported and preffered over font built-in hinting. Used by dynamic fonts only.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_is_language_supported" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "language" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Returns [code]true[/code], if font supports given language ([url=https://en.wikipedia.org/wiki/ISO_639-1]ISO 639[/url] code).
</description>
</method>
<method name= "font_is_multichannel_signed_distance_field" qualifiers= "const" >
<return type= "bool" />
<argument index= "0" name= "font_rid" type= "RID" />
<description >
Returns [code]true[/code] if glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_is_script_supported" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "script" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code], if font supports given script (ISO 15924 code).
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_remove_glyph" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
<description >
Removes specified rendered glyph information from the cache entry. Note: This function will not remove textures associated with the glyphs, use [method font_remove_texture] to remove them manually.
</description>
</method>
<method name= "font_remove_kerning" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "glyph_pair" type= "Vector2i" />
<description >
Removes kerning override for the pair of glyphs.
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_remove_language_support_override" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "language" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Remove language support override.
</description>
</method>
<method name= "font_remove_script_support_override" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "script" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Removes script support override.
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_remove_size_cache" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<description >
Removes specified font size from the cache entry.
</description>
</method>
<method name= "font_remove_texture" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "texture_index" type= "int" />
<description >
Removes specified texture from font cache entry. Note: This function will not remove glyphs associated with the texture, remove them manually, using [method font_remove_glyph].
</description>
</method>
<method name= "font_render_glyph" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "index" type= "int" />
<description >
Renders specified glyph the the font cache texture.
</description>
</method>
<method name= "font_render_range" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "start" type= "int" />
<argument index= "3" name= "end" type= "int" />
<description >
Renders the range of characters to the font cache texture.
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_set_antialiased" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "antialiased" type= "bool" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
If set to [code]true[/code], 8-bit antialiased glyph rendering is used, otherwise 1-bit rendering is used. Used by dynamic fonts only.
2020-08-12 13:49:10 +02:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_set_ascent" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "ascent" type= "float" />
<description >
Sets the font ascent (number of pixels above the baseline).
</description>
</method>
<method name= "font_set_data" >
<return type= "void" />
<argument index= "0" name= "data" type= "RID" />
<argument index= "1" name= "arg1" type= "PackedByteArray" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Sets font source data, e.g contents of the dynamic font source file.
</description>
</method>
<method name= "font_set_descent" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "descent" type= "float" />
<description >
Sets the font descent (number of pixels below the baseline).
</description>
</method>
<method name= "font_set_fixed_size" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "fixed_size" type= "int" />
<description >
Sets bitmap font fixed size. If set to value greater than zero, same cache entry will be used for all font sizes.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_set_force_autohinter" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "force_autohinter" type= "bool" />
<description >
If set to [code]true[/code] auto-hinting is preffered over font built-in hinting.
</description>
</method>
<method name= "font_set_global_oversampling" >
<return type= "void" />
<argument index= "0" name= "oversampling" type= "float" />
<description >
Sets oversampling factor, shared by all font in the TextServer.
Note: This value can be automaticaly changed by display server.
</description>
</method>
<method name= "font_set_glyph_advance" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "glyph" type= "int" />
<argument index= "3" name= "advance" type= "Vector2" />
<description >
Sets glyph advance (offset of the next glyph). Note: advance for glyphs outlines is the same as the base glyph advance and is not saved.
</description>
</method>
<method name= "font_set_glyph_offset" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
<argument index= "3" name= "offset" type= "Vector2" />
<description >
Sets glyph offset from the baseline.
</description>
</method>
<method name= "font_set_glyph_size" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
2021-08-28 05:30:32 +02:00
<argument index= "3" name= "gl_size" type= "Vector2" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Sets size of the glyph.
</description>
</method>
<method name= "font_set_glyph_texture_idx" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
<argument index= "3" name= "texture_idx" type= "int" />
<description >
Sets index of the cache texture containing the glyph.
</description>
</method>
<method name= "font_set_glyph_uv_rect" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "glyph" type= "int" />
<argument index= "3" name= "uv_rect" type= "Rect2" />
<description >
Sets rectangle in the cache texture containing the glyph.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_set_hinting" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "_hinting" type= "int" enum= "TextServer.Hinting" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Sets font hinting mode. Used by dynamic fonts only.
</description>
</method>
<method name= "font_set_kerning" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "glyph_pair" type= "Vector2i" />
<argument index= "3" name= "kerning" type= "Vector2" />
<description >
Sets kerning for the pair of glyphs.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_set_language_support_override" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "language" type= "String" />
<argument index= "2" name= "supported" type= "bool" />
2020-08-12 13:49:10 +02:00
<description >
Adds override for [method font_is_language_supported].
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_set_msdf_pixel_range" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "msdf_pixel_range" type= "int" />
<description >
Sets the width of the range around the shape between the minimum and maximum representable signed distance.
</description>
</method>
<method name= "font_set_msdf_size" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "msdf_size" type= "int" />
<description >
Sets source font size used to generate MSDF textures.
</description>
</method>
<method name= "font_set_multichannel_signed_distance_field" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "msdf" type= "bool" />
<description >
If set to [code]true[/code], glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data.
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "font_set_oversampling" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "oversampling" type= "float" />
2020-08-12 13:49:10 +02:00
<description >
2020-12-27 14:30:33 +01:00
Sets font oversampling factor, if set to [code]0.0[/code] global oversampling factor is used instead. Used by dynamic fonts only.
</description>
</method>
<method name= "font_set_scale" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "scale" type= "float" />
<description >
Sets scaling factor of the color bitmap font.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "font_set_script_support_override" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
2021-07-30 15:28:05 +02:00
<argument index= "1" name= "script" type= "String" />
<argument index= "2" name= "supported" type= "bool" />
2020-08-12 13:49:10 +02:00
<description >
Adds override for [method font_is_script_supported].
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_set_spacing" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "spacing" type= "int" enum= "TextServer.SpacingType" />
<argument index= "3" name= "value" type= "int" />
2021-02-15 09:46:23 +01:00
<description >
2020-12-27 14:30:33 +01:00
Sets extra spacing added between glyphs in pixels.
2021-02-15 09:46:23 +01:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_set_texture_image" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "texture_index" type= "int" />
<argument index= "3" name= "image" type= "Image" />
2021-02-15 09:46:23 +01:00
<description >
2020-12-27 14:30:33 +01:00
Sets font cache texture image data.
2021-02-15 09:46:23 +01:00
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "font_set_texture_offsets" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
2020-12-27 14:30:33 +01:00
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "Vector2i" />
<argument index= "2" name= "texture_index" type= "int" />
<argument index= "3" name= "offset" type= "PackedInt32Array" />
<description >
Sets array containing the first free pixel in the each column of texture. Should be the same size as texture width or empty.
</description>
</method>
<method name= "font_set_underline_position" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "underline_position" type= "float" />
<description >
Sets pixel offset of the underline below the baseline.
</description>
</method>
<method name= "font_set_underline_thickness" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "size" type= "int" />
<argument index= "2" name= "underline_thickness" type= "float" />
<description >
Sets thickness of the underline in pixels.
</description>
</method>
<method name= "font_set_variation_coordinates" >
<return type= "void" />
<argument index= "0" name= "font_rid" type= "RID" />
<argument index= "1" name= "variation_coordinates" type= "Dictionary" />
<description >
Sets variation coordinates for the specified font cache entry. See [method font_supported_variation_list] for more info.
</description>
</method>
<method name= "font_supported_feature_list" qualifiers= "const" >
<return type= "Dictionary" />
<argument index= "0" name= "font_rid" type= "RID" />
<description >
</description>
</method>
<method name= "font_supported_variation_list" qualifiers= "const" >
<return type= "Dictionary" />
<argument index= "0" name= "font_rid" type= "RID" />
2020-10-22 18:40:18 +02:00
<description >
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "format_number" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "String" />
<argument index= "0" name= "number" type= "String" />
<argument index= "1" name= "language" type= "String" default= """" />
2020-08-12 13:49:10 +02:00
<description >
Converts a number from the Western Arabic (0..9) to the numeral systems used in [code]language[/code].
</description>
</method>
<method name= "free_rid" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Frees an object created by this [TextServer].
</description>
</method>
<method name= "get_hex_code_box_size" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Vector2" />
<argument index= "0" name= "size" type= "int" />
<argument index= "1" name= "index" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns size of the replacement character (box with character hexadecimal code that is drawn in place of invalid characters).
</description>
</method>
<method name= "get_name" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Returns the name of the server interface.
</description>
</method>
<method name= "has" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if [code]rid[/code] is valid resource owned by this text server.
</description>
</method>
<method name= "has_feature" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "feature" type= "int" enum= "TextServer.Feature" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if the server supports a feature.
</description>
</method>
<method name= "is_locale_right_to_left" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "locale" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if locale is right-to-left.
</description>
</method>
<method name= "load_support_data" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "filename" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Loads optional TextServer database (e.g. ICU break iterators and dictionaries).
Note: This function should be called before any other TextServer functions used, otherwise it won't have any effect.
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "name_to_tag" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" />
<argument index= "0" name= "name" type= "String" />
2020-08-12 13:49:10 +02:00
<description >
Converts readable feature, variation, script or language name to OpenType tag.
</description>
</method>
<method name= "parse_number" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "String" />
<argument index= "0" name= "number" type= "String" />
<argument index= "1" name= "language" type= "String" default= """" />
2020-08-12 13:49:10 +02:00
<description >
Converts a number from the numeral systems used in [code]language[/code] to Western Arabic (0..9).
</description>
</method>
<method name= "percent_sign" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "String" />
<argument index= "0" name= "language" type= "String" default= """" />
2020-08-12 13:49:10 +02:00
<description >
Returns percent sign used in the [code]language[/code].
</description>
</method>
<method name= "shaped_text_add_object" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "key" type= "Variant" />
<argument index= "2" name= "size" type= "Vector2" />
2021-06-14 09:11:37 +02:00
<argument index= "3" name= "inline_align" type= "int" enum= "InlineAlign" default= "5" />
2021-07-30 15:28:05 +02:00
<argument index= "4" name= "length" type= "int" default= "1" />
2020-08-12 13:49:10 +02:00
<description >
Adds inline object to the text buffer, [code]key[/code] must be unique. In the text, object is represented as [code]length[/code] object replacement characters.
</description>
</method>
<method name= "shaped_text_add_string" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "text" type= "String" />
<argument index= "2" name= "fonts" type= "Array" />
<argument index= "3" name= "size" type= "int" />
2020-08-12 13:49:10 +02:00
<argument index= "4" name= "opentype_features" type= "Dictionary" default= "{
2021-07-30 15:28:05 +02:00
}" />
<argument index= "5" name= "language" type= "String" default= """" />
2020-08-12 13:49:10 +02:00
<description >
Adds text span and font to draw it to the text buffer.
</description>
</method>
<method name= "shaped_text_clear" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "rid" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Clears text buffer (removes text and inline objects).
</description>
</method>
<method name= "shaped_text_draw" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "canvas" type= "RID" />
<argument index= "2" name= "pos" type= "Vector2" />
<argument index= "3" name= "clip_l" type= "float" default= "-1" />
<argument index= "4" name= "clip_r" type= "float" default= "-1" />
<argument index= "5" name= "color" type= "Color" default= "Color(1, 1, 1, 1)" />
2020-08-12 13:49:10 +02:00
<description >
Draw shaped text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout).
</description>
</method>
<method name= "shaped_text_draw_outline" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "canvas" type= "RID" />
<argument index= "2" name= "pos" type= "Vector2" />
<argument index= "3" name= "clip_l" type= "float" default= "-1" />
<argument index= "4" name= "clip_r" type= "float" default= "-1" />
<argument index= "5" name= "outline_size" type= "int" default= "1" />
<argument index= "6" name= "color" type= "Color" default= "Color(1, 1, 1, 1)" />
2020-08-12 13:49:10 +02:00
<description >
Draw the outline of the shaped text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout).
</description>
</method>
<method name= "shaped_text_fit_to_width" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "width" type= "float" />
<argument index= "2" name= "jst_flags" type= "int" default= "3" />
2020-08-12 13:49:10 +02:00
<description >
Adjusts text with to fit to specified width, returns new text width.
</description>
</method>
<method name= "shaped_text_get_ascent" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns the text ascent (number of pixels above the baseline for horizontal layout or to the left of baseline for vertical).
Note: overall ascent can be higher than font ascent, if some glyphs are displaced from the baseline.
</description>
</method>
<method name= "shaped_text_get_carets" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Dictionary" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "position" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns shapes of the carets corresponding to the character offset [code]position[/code] in the text. Returned caret shape is 1 pixel wide rectangle.
</description>
</method>
<method name= "shaped_text_get_descent" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns the text descent (number of pixels below the baseline for horizontal layout or to the right of baseline for vertical).
Note: overall descent can be higher than font descent, if some glyphs are displaced from the baseline.
</description>
</method>
<method name= "shaped_text_get_direction" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" enum= "TextServer.Direction" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns direction of the text.
</description>
</method>
<method name= "shaped_text_get_dominant_direciton_in_range" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" enum= "TextServer.Direction" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "start" type= "int" />
<argument index= "2" name= "end" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns dominant direction of in the range of text.
</description>
</method>
<method name= "shaped_text_get_glyphs" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Array" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns text glyphs.
</description>
</method>
<method name= "shaped_text_get_line_breaks" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Array" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "width" type= "float" />
<argument index= "2" name= "start" type= "int" default= "0" />
<argument index= "3" name= "break_flags" type= "int" default= "48" />
2020-08-12 13:49:10 +02:00
<description >
Breaks text to the lines and returns character ranges for each line.
</description>
</method>
<method name= "shaped_text_get_line_breaks_adv" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Array" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "width" type= "PackedFloat32Array" />
<argument index= "2" name= "start" type= "int" default= "0" />
<argument index= "3" name= "once" type= "bool" default= "true" />
<argument index= "4" name= "break_flags" type= "int" default= "48" />
2020-08-12 13:49:10 +02:00
<description >
Breaks text to the lines and columns. Returns character ranges for each segment.
</description>
</method>
<method name= "shaped_text_get_object_rect" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Rect2" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "key" type= "Variant" />
2020-08-12 13:49:10 +02:00
<description >
Returns bounding rectangle of the inline object.
</description>
</method>
<method name= "shaped_text_get_objects" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Array" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns array of inline objects.
</description>
</method>
<method name= "shaped_text_get_orientation" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" enum= "TextServer.Orientation" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns text orientation.
</description>
</method>
<method name= "shaped_text_get_parent" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "RID" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Sets text orientation.
</description>
</method>
<method name= "shaped_text_get_preserve_control" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if text buffer is configured to display control characters.
</description>
</method>
<method name= "shaped_text_get_preserve_invalid" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if text buffer is configured to display hexadecimal codes in place of invalid characters.
2021-06-07 10:17:32 +02:00
Note: If set to [code]false[/code], nothing is displayed in place of invalid characters.
2020-08-12 13:49:10 +02:00
</description>
</method>
<method name= "shaped_text_get_range" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Vector2i" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns substring buffer character range in the parent buffer.
</description>
</method>
<method name= "shaped_text_get_selection" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Array" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "start" type= "int" />
<argument index= "2" name= "end" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns selection rectangles for the specified character range.
</description>
</method>
<method name= "shaped_text_get_size" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Vector2" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns size of the text.
</description>
</method>
<method name= "shaped_text_get_underline_position" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns pixel offset of the underline below the baseline.
</description>
</method>
<method name= "shaped_text_get_underline_thickness" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns thickness of the underline.
</description>
</method>
<method name= "shaped_text_get_width" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns width (for horizontal layout) or height (for vertical) of the text.
</description>
</method>
<method name= "shaped_text_get_word_breaks" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "Array" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Breaks text into words and returns array of character ranges.
</description>
</method>
<method name= "shaped_text_hit_test_grapheme" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "coords" type= "float" />
2020-08-12 13:49:10 +02:00
<description >
Returns grapheme index at the specified pixel offset at the baseline, or [code]-1[/code] if none is found.
</description>
</method>
<method name= "shaped_text_hit_test_position" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "int" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "coords" type= "float" />
2020-08-12 13:49:10 +02:00
<description >
Returns caret character offset at the specified pixel offset at the baseline. This function always returns a valid position.
</description>
</method>
<method name= "shaped_text_is_ready" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Returns [code]true[/code] if buffer is successfully shaped.
</description>
</method>
<method name= "shaped_text_next_grapheme_pos" >
2021-07-30 15:28:05 +02:00
<return type= "int" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "pos" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns composite character end position closest to the [code]pos[/code].
</description>
</method>
2021-07-04 16:43:55 +02:00
<method name= "shaped_text_overrun_trim_to_width" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "width" type= "float" default= "0" />
<argument index= "2" name= "overrun_trim_flags" type= "int" default= "0" />
2021-07-04 16:43:55 +02:00
<description >
Trims text if it exceeds the given width.
</description>
</method>
2020-08-12 13:49:10 +02:00
<method name= "shaped_text_prev_grapheme_pos" >
2021-07-30 15:28:05 +02:00
<return type= "int" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "pos" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns composite character start position closest to the [code]pos[/code].
</description>
</method>
<method name= "shaped_text_resize_object" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "key" type= "Variant" />
<argument index= "2" name= "size" type= "Vector2" />
2021-06-14 09:11:37 +02:00
<argument index= "3" name= "inline_align" type= "int" enum= "InlineAlign" default= "5" />
2020-08-12 13:49:10 +02:00
<description >
Sets new size and alignment of embedded object.
</description>
</method>
<method name= "shaped_text_set_bidi_override" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "override" type= "Array" />
2020-08-12 13:49:10 +02:00
<description >
Overrides BiDi for the structured text.
Override ranges should cover full source text without overlaps. BiDi algorithm will be used on each range separately.
</description>
</method>
<method name= "shaped_text_set_direction" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "direction" type= "int" enum= "TextServer.Direction" default= "0" />
2020-08-12 13:49:10 +02:00
<description >
Sets desired text direction. If set to [code]TEXT_DIRECTION_AUTO[/code], direction will be detected based on the buffer contents and current locale.
Note: Direction is ignored if server does not support [code]FEATURE_BIDI_LAYOUT[/code] feature.
</description>
</method>
<method name= "shaped_text_set_orientation" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "orientation" type= "int" enum= "TextServer.Orientation" default= "0" />
2020-08-12 13:49:10 +02:00
<description >
Sets desired text orientation.
Note: Orientation is ignored if server does not support [code]FEATURE_VERTICAL_LAYOUT[/code] feature.
</description>
</method>
<method name= "shaped_text_set_preserve_control" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "enabled" type= "bool" />
2020-08-12 13:49:10 +02:00
<description >
If set to [code]true[/code] text buffer will display control characters.
</description>
</method>
<method name= "shaped_text_set_preserve_invalid" >
2021-07-30 15:28:05 +02:00
<return type= "void" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "enabled" type= "bool" />
2020-08-12 13:49:10 +02:00
<description >
If set to [code]true[/code] text buffer will display invalid characters as hexadecimal codes, otherwise nothing is displayed.
</description>
</method>
<method name= "shaped_text_shape" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
<argument index= "0" name= "shaped" type= "RID" />
2020-08-12 13:49:10 +02:00
<description >
Shapes buffer if it's not shaped. Returns [code]true[/code] if the string is shaped successfully.
Note: It is not necessary to call this function manually, buffer will be shaped automatically as soon as any of its output data is requested.
</description>
</method>
<method name= "shaped_text_substr" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "RID" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "start" type= "int" />
<argument index= "2" name= "length" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Returns text buffer for the substring of the text in the [code]shaped[/code] text buffer (including inline objects).
</description>
</method>
<method name= "shaped_text_tab_align" >
2021-07-30 15:28:05 +02:00
<return type= "float" />
<argument index= "0" name= "shaped" type= "RID" />
<argument index= "1" name= "tab_stops" type= "PackedFloat32Array" />
2020-08-12 13:49:10 +02:00
<description >
Aligns shaped text to the given tab-stops.
</description>
</method>
2020-12-27 14:30:33 +01:00
<method name= "tag_to_name" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "String" />
<argument index= "0" name= "tag" type= "int" />
2020-08-12 13:49:10 +02:00
<description >
Converts OpenType tag to readable feature, variation, script or language name.
</description>
</method>
</methods>
<constants >
<constant name= "DIRECTION_AUTO" value= "0" enum= "Direction" >
Text direction is determined based on contents and current locale.
</constant>
<constant name= "DIRECTION_LTR" value= "1" enum= "Direction" >
Text is written from left to right.
</constant>
<constant name= "DIRECTION_RTL" value= "2" enum= "Direction" >
Text is written from right to left.
</constant>
<constant name= "ORIENTATION_HORIZONTAL" value= "0" enum= "Orientation" >
Text is written horizontally.
</constant>
<constant name= "ORIENTATION_VERTICAL" value= "1" enum= "Orientation" >
Left to right text is written vertically from top to bottom.
Right to left text is written vertically from bottom to top.
</constant>
<constant name= "JUSTIFICATION_NONE" value= "0" enum= "JustificationFlag" >
Do not justify text.
</constant>
<constant name= "JUSTIFICATION_KASHIDA" value= "1" enum= "JustificationFlag" >
Justify text by adding and removing kashidas.
</constant>
<constant name= "JUSTIFICATION_WORD_BOUND" value= "2" enum= "JustificationFlag" >
Justify text by changing width of the spaces between the words.
</constant>
<constant name= "JUSTIFICATION_TRIM_EDGE_SPACES" value= "4" enum= "JustificationFlag" >
Remove trailing and leading spaces from the justified text.
</constant>
<constant name= "JUSTIFICATION_AFTER_LAST_TAB" value= "8" enum= "JustificationFlag" >
Only apply justification to the part of the text after the last tab.
</constant>
<constant name= "BREAK_NONE" value= "0" enum= "LineBreakFlag" >
Do not break the line.
</constant>
<constant name= "BREAK_MANDATORY" value= "16" enum= "LineBreakFlag" >
Break the line at the line mandatory break characters (e.g. [code]"\n"[/code]).
</constant>
<constant name= "BREAK_WORD_BOUND" value= "32" enum= "LineBreakFlag" >
Break the line between the words.
</constant>
<constant name= "BREAK_GRAPHEME_BOUND" value= "64" enum= "LineBreakFlag" >
Break the line between any unconnected graphemes.
</constant>
2021-07-04 16:43:55 +02:00
<constant name= "OVERRUN_NO_TRIMMING" value= "0" enum= "TextOverrunFlag" >
No trimming is performed.
</constant>
<constant name= "OVERRUN_TRIM" value= "1" enum= "TextOverrunFlag" >
Trims the text when it exceeds the given width.
</constant>
<constant name= "OVERRUN_TRIM_WORD_ONLY" value= "2" enum= "TextOverrunFlag" >
Trims the text per word instead of per grapheme.
</constant>
<constant name= "OVERRUN_ADD_ELLIPSIS" value= "4" enum= "TextOverrunFlag" >
Determines whether an ellipsis should be added at the end of the text.
</constant>
<constant name= "OVERRUN_ENFORCE_ELLIPSIS" value= "8" enum= "TextOverrunFlag" >
Determines whether the ellipsis at the end of the text is enforced and may not be hidden.
</constant>
2020-08-12 13:49:10 +02:00
<constant name= "GRAPHEME_IS_RTL" value= "2" enum= "GraphemeFlag" >
Grapheme is part of right-to-left or bottom-to-top run.
</constant>
<constant name= "GRAPHEME_IS_VIRTUAL" value= "4" enum= "GraphemeFlag" >
Grapheme is not part of source text, it was added by justification process.
</constant>
<constant name= "GRAPHEME_IS_SPACE" value= "8" enum= "GraphemeFlag" >
Grapheme is whitespace.
</constant>
<constant name= "GRAPHEME_IS_BREAK_HARD" value= "16" enum= "GraphemeFlag" >
Grapheme is mandatory break point (e.g. [code]"\n"[/code]).
</constant>
<constant name= "GRAPHEME_IS_BREAK_SOFT" value= "32" enum= "GraphemeFlag" >
Grapheme is optional break point (e.g. space).
</constant>
<constant name= "GRAPHEME_IS_TAB" value= "64" enum= "GraphemeFlag" >
Grapheme is the tabulation character.
</constant>
<constant name= "GRAPHEME_IS_ELONGATION" value= "128" enum= "GraphemeFlag" >
Grapheme is kashida.
</constant>
2020-12-14 09:30:32 +01:00
<constant name= "GRAPHEME_IS_PUNCTUATION" value= "256" enum= "GraphemeFlag" >
Grapheme is punctuation character.
</constant>
2020-08-12 13:49:10 +02:00
<constant name= "HINTING_NONE" value= "0" enum= "Hinting" >
Disables font hinting (smoother but less crisp).
</constant>
<constant name= "HINTING_LIGHT" value= "1" enum= "Hinting" >
Use the light font hinting mode.
</constant>
<constant name= "HINTING_NORMAL" value= "2" enum= "Hinting" >
Use the default font hinting mode (crisper but less smooth).
</constant>
<constant name= "FEATURE_BIDI_LAYOUT" value= "1" enum= "Feature" >
TextServer supports bidirectional layouts.
</constant>
<constant name= "FEATURE_VERTICAL_LAYOUT" value= "2" enum= "Feature" >
TextServer supports vertical layouts.
</constant>
<constant name= "FEATURE_SHAPING" value= "4" enum= "Feature" >
TextServer supports complex text shaping.
</constant>
<constant name= "FEATURE_KASHIDA_JUSTIFICATION" value= "8" enum= "Feature" >
TextServer supports justification using kashidas.
</constant>
<constant name= "FEATURE_BREAK_ITERATORS" value= "16" enum= "Feature" >
TextServer supports complex line/word breaking rules (e.g. dictionary based).
</constant>
<constant name= "FEATURE_FONT_SYSTEM" value= "32" enum= "Feature" >
TextServer supports loading system fonts.
</constant>
2020-10-22 18:40:18 +02:00
<constant name= "FEATURE_FONT_VARIABLE" value= "64" enum= "Feature" >
TextServer supports variable fonts.
</constant>
<constant name= "FEATURE_USE_SUPPORT_DATA" value= "128" enum= "Feature" >
2020-08-12 13:49:10 +02:00
TextServer require external data file for some features.
</constant>
2020-12-10 16:30:25 +01:00
<constant name= "CONTOUR_CURVE_TAG_ON" value= "1" enum= "ContourPointTag" >
Contour point is on the curve.
</constant>
<constant name= "CONTOUR_CURVE_TAG_OFF_CONIC" value= "0" enum= "ContourPointTag" >
Contour point isn't on the curve, but serves as a control point for a conic (quadratic) Bézier arc.
</constant>
<constant name= "CONTOUR_CURVE_TAG_OFF_CUBIC" value= "2" enum= "ContourPointTag" >
Contour point isn't on the curve, but serves as a control point for a cubic Bézier arc.
</constant>
2020-12-27 14:30:33 +01:00
<constant name= "SPACING_GLYPH" value= "0" enum= "SpacingType" >
Spacing for each glyph.
</constant>
<constant name= "SPACING_SPACE" value= "1" enum= "SpacingType" >
Spacing for the space character.
</constant>
<constant name= "SPACING_TOP" value= "2" enum= "SpacingType" >
Spacing at the top of the line.
</constant>
<constant name= "SPACING_BOTTOM" value= "3" enum= "SpacingType" >
Spacing at the bottom of the line.
</constant>
2020-08-12 13:49:10 +02:00
</constants>
</class>