Label
inherited (BaseShape)
Текст
Параметры
- text
Обязательный параметр, указывающий что именно будет написано
- font_name
Название шрифта, заменяет шрифт по умолчанию.
Этот параметр поддерживает встроенные шрифты (Tools/File to BASE64).
- font_size
Размер шрифта
- text_color
Цвет текста. Не тоже самое что параметр
color!- text_spacing
Расстояние между строками для многострочного текста
- zfill
Аналог функции строки zfill()
- lower
Аналог функции строки lower()
- upper
Аналог функции строки upper()
- title
Аналог функции строки title()
- truncate
Обрезка строки на длину, не более указанной.
- ltruncate
Обрезка, аналогичная параметру truncate, только от начала строки.
- truncate_path
Обрезка пути. Путь разделяется по знаку слэша и остаётся только указанное количество элементов.
- ltruncate_path
Обрезка пути слева. Остаётся указанное количество последних элементов.
- truncate_to_parent
Обрезка строки чтобы она вписалась в ширину парента.
- ltruncate_to_parent
Обрезка по ширине парента с удалением текста слева.
- fit_to_parent
Вписать текст в ширину парента с переносом на новую строку.
- line_splitter
Символ для разбиение текста при переносе на новую строку. Работает только вместе с
fit_to_parent.- move_splitter_to_next_line
Если
Trueто символ разбиения переносится на новую строку, еслиFalseто остаётся на предыдущей. Работает только сfit_to_parent.- max_lines_count
Ограничение по количеству переносов при включенном
fit_to_parent. Лишние строки удаляются- lmax_lines_count
То же что и max_lines_count но удалятся строки в начале текста. Работает только вместе с
fit_to_parent.- outline
Обводка текста. Данный параметр можно указывать в двух вариантах
number
Указывая просто число (int или float) вы указываете толщину черного контура. Параметр называется
width.
- padding
Отступы от доступного для рендера пространства. Пишется в виде списка из 4х элементов. Каждый элемент обозначает свою сторону начиная с
topи далее по часовой стрелке. То есть параметр[1, 2, 3, 4]равенtop=1, right=2, bottom=3, left=4- padding_top
Указывает отступ только сверху. Имеет бОльший приоритет чем параметр
padding- padding_right
Указывает отступ только справа. Имеет бОльший приоритет чем параметр
padding- padding_bottom
Указывает отступ только снизу. Имеет бОльший приоритет чем параметр
padding- padding_left
Указывает отступ только слева. Имеет бОльший приоритет чем параметр
padding
{"outline": 3}
dict
С помощью словаря можно указать еще два параметра, это цвет и жесткость.
{"outline": {"width": 3, "color": "red", "hardness": 1}}
- backdrop
Подложка для текста. Доступно два способа определения
str/list
В качестве одиночного параметра может выступать цвет в виде строки или списка из 3 или 4 чисел.
{"backdrop": [0, 0, 0, 100]}
dict
С помощью словаря можно указать дополнительный параметр смещения координат бекдропа.
{"backdrop": {"offset": 10, "color": "red"}}
- format_date
Форматирование даты. Позволяет вставить дату любого формата в тексте. Про форматирование даты можно почитать в документации. Дата берётся из контекста, параметр timestamp или текущая дата.
{
"type": "label",
"text": "Date: {:%Y/%m/%d}",
"format_date": true
}
Специальные символы
- &;
Пустой символ. Полезно для разделения имени переменной от другого текста если между ними не нужен пробел. Например такая запись:
$widthx$heightвызовет ошибку, так как парсер будет искать переменную$widthx. В таком случае писать нужно так:$width&;x&;$height. Эта запись будет распечатана как800x600- HTML
Поддерживаются любые HTML-спец символы в формате
&[name];.Пример списка символов: https://www.whatsmyip.org/html-characters/
- (`)
Текст в фигуре label по умолчанию не воспринимается как выражение. Если вы напишете такое выражение:
"text": "=int($frame/$total_frames*100)"То получите в результате такой текст:
int(32/200*100)По умолчанию в тексте распаковываются только переменные, начинающиеся на символ $. Чтобы добавить в текст лейбла выражение его необходимо обозначить апострофом (`) с двух сторон. При этом вне этой зоны можно писать любой другой текст:
"text": "Progress: `=int($frame/$total_frames*100)`%"Тогда получите такой результат:
Progress: 16%Один лейбл может содержать несколько отдельных экспрешенов.