Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

CharFXTransform

Inherits: RefCounted < Object

Controls how an individual character will be displayed in a RichTextEffect.

Description

By setting various properties on this object, you can control how individual characters will be displayed in a RichTextEffect.

Tutorials

Properties

Color

color

Color(0, 0, 0, 1)

float

elapsed_time

0.0

Dictionary

env

{}

RID

font

RID()

int

glyph_count

0

int

glyph_flags

0

int

glyph_index

0

Vector2

offset

Vector2(0, 0)

bool

outline

false

Vector2i

range

Vector2i(0, 0)

int

relative_index

0

Transform2D

transform

Transform2D(1, 0, 0, 1, 0, 0)

bool

visible

true


Property Descriptions

Color color = Color(0, 0, 0, 1)

  • void set_color ( Color value )

  • Color get_color ( )

The color the character will be drawn with.


float elapsed_time = 0.0

  • void set_elapsed_time ( float value )

  • float get_elapsed_time ( )

The time elapsed since the RichTextLabel was added to the scene tree (in seconds). Time stops when the RichTextLabel is paused (see Node.process_mode). Resets when the text in the RichTextLabel is changed.

Note: Time still passes while the RichTextLabel is hidden.


Dictionary env = {}

Contains the arguments passed in the opening BBCode tag. By default, arguments are strings; if their contents match a type such as bool, int or float, they will be converted automatically. Color codes in the form #rrggbb or #rgb will be converted to an opaque Color. String arguments may not contain spaces, even if they're quoted. If present, quotes will also be present in the final string.

For example, the opening BBCode tag [example foo=hello bar=true baz=42 color=#ffffff] will map to the following Dictionary:

{"foo": "hello", "bar": true, "baz": 42, "color": Color(1, 1, 1, 1)}

RID font = RID()

  • void set_font ( RID value )

  • RID get_font ( )

Font resource used to render glyph.


int glyph_count = 0

  • void set_glyph_count ( int value )

  • int get_glyph_count ( )

Number of glyphs in the grapheme cluster. This value is set in the first glyph of a cluster. Setting this property won't affect drawing.


int glyph_flags = 0

  • void set_glyph_flags ( int value )

  • int get_glyph_flags ( )

Glyph flags. See GraphemeFlag for more info. Setting this property won't affect drawing.


int glyph_index = 0

  • void set_glyph_index ( int value )

  • int get_glyph_index ( )

Font specific glyph index.


Vector2 offset = Vector2(0, 0)

The position offset the character will be drawn with (in pixels).


bool outline = false

  • void set_outline ( bool value )

  • bool is_outline ( )

If true, FX transform is called for outline drawing. Setting this property won't affect drawing.


Vector2i range = Vector2i(0, 0)

Absolute character range in the string, corresponding to the glyph. Setting this property won't affect drawing.


int relative_index = 0

  • void set_relative_index ( int value )

  • int get_relative_index ( )

The character offset of the glyph, relative to the current RichTextEffect custom block. Setting this property won't affect drawing.


Transform2D transform = Transform2D(1, 0, 0, 1, 0, 0)

The current transform of the current glyph. It can be overridden (for example, by driving the position and rotation from a curve). You can also alter the existing value to apply transforms on top of other effects.


bool visible = true

  • void set_visibility ( bool value )

  • bool is_visible ( )

If true, the character will be drawn. If false, the character will be hidden. Characters around hidden characters will reflow to take the space of hidden characters. If this is not desired, set their color to Color(1, 1, 1, 0) instead.