Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
TextParagraph
Наследует: RefCounted < Object
Содержит абзац текста.
Описание
Абстракция над TextServer для обработки одного абзаца текста.
Свойства
|
||
BitField[LineBreakFlag] |
|
|
|
||
|
||
|
||
BitField[JustificationFlag] |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
Методы
add_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, length: int = 1, baseline: float = 0.0) |
|
add_string(text: String, font: Font, font_size: int, language: String = "", meta: Variant = null) |
|
void |
clear() |
void |
|
void |
draw(canvas: RID, pos: Vector2, color: Color = Color(1, 1, 1, 1), dc_color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const |
void |
draw_dropcap(canvas: RID, pos: Vector2, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const |
void |
draw_dropcap_outline(canvas: RID, pos: Vector2, outline_size: int = 1, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const |
void |
draw_line(canvas: RID, pos: Vector2, line: int, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const |
void |
draw_line_outline(canvas: RID, pos: Vector2, line: int, outline_size: int = 1, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const |
void |
draw_outline(canvas: RID, pos: Vector2, outline_size: int = 1, color: Color = Color(1, 1, 1, 1), dc_color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const |
duplicate() const |
|
get_dropcap_lines() const |
|
get_dropcap_rid() const |
|
get_dropcap_size() const |
|
get_inferred_direction() const |
|
get_line_ascent(line: int) const |
|
get_line_count() const |
|
get_line_descent(line: int) const |
|
get_line_object_rect(line: int, key: Variant) const |
|
get_line_objects(line: int) const |
|
get_line_range(line: int) const |
|
get_line_rid(line: int) const |
|
get_line_size(line: int) const |
|
get_line_underline_position(line: int) const |
|
get_line_underline_thickness(line: int) const |
|
get_line_width(line: int) const |
|
get_non_wrapped_size() const |
|
get_range() const |
|
get_rid() const |
|
get_size() const |
|
has_object(key: Variant) const |
|
resize_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, baseline: float = 0.0) |
|
void |
set_bidi_override(override: Array) |
set_dropcap(text: String, font: Font, font_size: int, dropcap_margins: Rect2 = Rect2(0, 0, 0, 0), language: String = "") |
|
void |
tab_align(tab_stops: PackedFloat32Array) |
Описания свойств
HorizontalAlignment alignment = 0 🔗
void set_alignment(value: HorizontalAlignment)
HorizontalAlignment get_alignment()
Горизонтальное выравнивание абзаца.
BitField[LineBreakFlag] break_flags = 3 🔗
void set_break_flags(value: BitField[LineBreakFlag])
BitField[LineBreakFlag] get_break_flags()
Правила переноса строк. Для получения дополнительной информации см. TextServer.
String custom_punctuation = "" 🔗
Пользовательский список знаков препинания, используемый для разбиения слов. Если задана пустая строка, используются значения сервера по умолчанию.
Направление написания текста.
Символ многоточия, используемый для обрезки текста.
BitField[JustificationFlag] justification_flags = 163 🔗
void set_justification_flags(value: BitField[JustificationFlag])
BitField[JustificationFlag] get_justification_flags()
Правила выравнивания заливки линий.
Дополнительный вертикальный интервал между строками (в пикселях), интервал добавляется к спуску строки. Это значение может быть отрицательным.
Ограничивает количество отображаемых строк текста.
Orientation orientation = 0 🔗
void set_orientation(value: Orientation)
Orientation get_orientation()
Ориентация текста.
bool preserve_control = false 🔗
Если установлено значение true, текст будет отображать управляющие символы.
bool preserve_invalid = true 🔗
Если установлено значение true, в тексте будут отображаться недопустимые символы.
OverrunBehavior text_overrun_behavior = 0 🔗
void set_text_overrun_behavior(value: OverrunBehavior)
OverrunBehavior get_text_overrun_behavior()
Поведение обрезки, когда текст превышает заданную ширину абзаца.
Ширина абзаца.
Описания метода
bool add_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, length: int = 1, baseline: float = 0.0) 🔗
Добавляет встроенный объект в текстовый буфер, key должен быть уникальным. В тексте объект представлен как length символов замены объекта.
bool add_string(text: String, font: Font, font_size: int, language: String = "", meta: Variant = null) 🔗
Добавляет текстовый диапазон и шрифт для его отрисовки.
void clear() 🔗
Очищает текстовый абзац (удаляет текст и встроенные объекты).
void clear_dropcap() 🔗
Удаляет начальную букву капитель (dropcap).
void draw(canvas: RID, pos: Vector2, color: Color = Color(1, 1, 1, 1), dc_color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const 🔗
Нарисуйте все строки текста и буквицы в элементе холста в заданной позиции с color. pos указывает верхний левый угол ограничивающего прямоугольника. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
void draw_dropcap(canvas: RID, pos: Vector2, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const 🔗
Нарисуйте буквицу в элементе холста в заданной позиции с color. pos указывает верхний левый угол ограничивающего прямоугольника. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
void draw_dropcap_outline(canvas: RID, pos: Vector2, outline_size: int = 1, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const 🔗
Нарисуйте контур буквицы в элементе холста в заданной позиции с color. pos указывает верхний левый угол ограничивающего прямоугольника. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
void draw_line(canvas: RID, pos: Vector2, line: int, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const 🔗
Нарисуйте одну строку текста в элементе холста в заданной позиции с color. pos указывает верхний левый угол ограничивающего прямоугольника. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
void draw_line_outline(canvas: RID, pos: Vector2, line: int, outline_size: int = 1, color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const 🔗
Нарисовать контур одной строки текста в элементе холста в заданной позиции с color. pos указывает верхний левый угол ограничивающего прямоугольника. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
void draw_outline(canvas: RID, pos: Vector2, outline_size: int = 1, color: Color = Color(1, 1, 1, 1), dc_color: Color = Color(1, 1, 1, 1), oversampling: float = 0.0) const 🔗
Нарисовать контуры всех строк текста и буквицы в элементе холста в заданной позиции с color. pos указывает верхний левый угол ограничивающего прямоугольника. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
TextParagraph duplicate() const 🔗
Дублирует этот TextParagraph.
int get_dropcap_lines() const 🔗
Возвращает количество строк, используемых в dropcap (буквицей).
Возвращает RID текстового буфера буквицы.
Vector2 get_dropcap_size() const 🔗
Возвращает размер ограничивающего прямоугольника буквицы.
Direction get_inferred_direction() const 🔗
Возвращает направление написания текста, выведенное алгоритмом BiDi.
float get_line_ascent(line: int) const 🔗
Возвращает высоту текстовой строки (количество пикселей над базовой линией для горизонтальной компоновки или слева от базовой линии для вертикальной).
Возвращает количество строк в абзаце.
float get_line_descent(line: int) const 🔗
Возвращает смещение текстовой строки (количество пикселей ниже базовой линии для горизонтальной компоновки или справа от базовой линии для вертикальной).
Rect2 get_line_object_rect(line: int, key: Variant) const 🔗
Возвращает ограничивающий прямоугольник встроенного объекта.
Array get_line_objects(line: int) const 🔗
Возвращает массив встроенных объектов в строке.
Vector2i get_line_range(line: int) const 🔗
Возвращает диапазон символов строки.
RID get_line_rid(line: int) const 🔗
Возвращает RID буфера строки TextServer.
Vector2 get_line_size(line: int) const 🔗
Возвращает размер ограничивающего прямоугольника строки текста. Возвращаемый размер округляется в большую сторону.
float get_line_underline_position(line: int) const 🔗
Возвращает смещение подчеркивания в пикселях относительно базовой линии.
float get_line_underline_thickness(line: int) const 🔗
Возвращает толщину подчеркивания.
float get_line_width(line: int) const 🔗
Возвращает ширину (для горизонтального расположения) или высоту (для вертикального расположения) строки текста.
Vector2 get_non_wrapped_size() const 🔗
Возвращает размер ограничивающей рамки абзаца без переносов строк.
Возвращает диапазон символов абзаца/параграфа.
Возвращает полный строковый буфер RID TextServer.
Возвращает размер ограничивающей рамки абзаца.
bool has_object(key: Variant) const 🔗
Возвращает true, если объект с key встроен в этот текстовый буфер заданной формы.
int hit_test(coords: Vector2) const 🔗
Возвращает смещение символа каретки в указанных координатах. Эта функция всегда возвращает допустимую позицию.
bool resize_object(key: Variant, size: Vector2, inline_align: InlineAlignment = 5, baseline: float = 0.0) 🔗
Устанавливает новый размер и выравнивание внедренного объекта.
void set_bidi_override(override: Array) 🔗
Переопределяет BiDi для структурированного текста.
Диапазоны переопределения должны охватывать весь исходный текст без перекрытий. Алгоритм BiDi будет использоваться для каждого диапазона отдельно.
bool set_dropcap(text: String, font: Font, font_size: int, dropcap_margins: Rect2 = Rect2(0, 0, 0, 0), language: String = "") 🔗
Устанавливает буквицу, переопределяет ранее установленную буквицу. Буквица — декоративный элемент в начале абзаца, который больше остального текста.
void tab_align(tab_stops: PackedFloat32Array) 🔗
Выравнивает абзац по указанным позициям табуляции.