LabelSettings
Общее оформление Label: шрифт, интервалы, обводки и тени.
Назначьте LabelSettings свойству Label.LabelSettings для общего оформления нескольких надписей. Соответствующие параметры ресурса имеют приоритет над theme-значениями Label. Font = null позволяет использовать шрифт темы, но остальные настройки ресурса, включая FontSize, продолжают действовать.
Начальные значения: FontSize = 16, FontColor белый, LineSpacing = 3, ParagraphSpacing = 0, OutlineSize = 0. ShadowColor прозрачен, поэтому основная тень не видна, хотя ShadowSize = 1 и ShadowOffset = (1, 1). ShadowSize расширяет контур тени, не задаёт Gaussian blur.
Ресурс общий: изменение FontSize или цвета затронет все использующие его Label. Setters изменённых значений испускают Changed; повторное присваивание того же значения обычно ничего не испускает. Changed вложенного Font передаётся через LabelSettings. Для индивидуального оформления создайте копию LabelSettings и назначьте её нужной надписи. Обычная Duplicate отделяет значения стиля и списки слоёв, но Font остаётся общей ссылкой — изменение самого шрифта может затронуть обе копии.
LineSpacing — дополнительный интервал между строками, ParagraphSpacing — между абзацами. Это пиксельные значения, допускающие дробную часть; они не определяют ширину текста и не включают перенос. Для размера шрифта используйте положительное число, для толщины обводки — неотрицательное; setters размеров не заменяют проверку внешних данных.
Дополнительные эффекты задаются по индексам. Сначала AddStackedOutline/Shadow либо установите Count, затем настройте размер, цвет и смещение существующих слоёв. Новая обводка имеет Size = 0 и чёрный цвет; новая тень — Offset = (1, 1), чёрный непрозрачный цвет и OutlineSize = 0. Задавайте её цвет явно, если не нужна чёрная тень. Рост Count добавляет значения по умолчанию, уменьшение уничтожает хвост.
Add с index = -1 добавляет в конец; неотрицательный index от 0 до Count вставляет перед указанной позицией. Move принимает позицию вставки до удаления исходного элемента, тоже 0…Count. Например, для трёх слоёв MoveStackedOutline(0, 3) переносит первый в конец, а (0, 1) сохраняет порядок. Даже такое перемещение без видимого изменения испускает Changed. После вставки/удаления индексы следующих слоёв меняются.
Толщины дополнительных обводок суммируются с основной OutlineSize: это добавочная толщина каждого слоя, не независимый абсолютный радиус. Внешние слои рисуются раньше внутренних. Дополнительные тени рисуются от последнего индекса к первому, перед обводками и основным текстом. Большие суммарные обводки требуют подходящей настройки диапазона MSDF шрифта; иначе края могут обрезаться.
Эффекты не резервируют место в родительской раскладке. Большая обводка или ShadowOffset могут выходить за границы Label и обрезаться родителем. Выделите отступы контейнером и учитывайте clipping отдельно; изменение цвета не решает недостаток места.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
LabelSettingsКонструктор
public LabelSettings();Создаёт ресурс: Font = null, FontSize = 16, белый FontColor, LineSpacing = 3, ParagraphSpacing = 0, OutlineSize = 0, прозрачная основная тень; оба дополнительных списка пусты.
Свойства12
FontСвойство
public Font Font { get; set; }Общая ссылка Font либо null для шрифта темы Label. Изменения назначенного Font передаются через Changed; замена отключает подписку от старого ресурса. Duplicate LabelSettings по умолчанию не делает Font независимым.
FontColorСвойство
public Color FontColor { get; set; }Цвет и альфа основного текста, белый по умолчанию. Изменение общего ресурса затрагивает все использующие его Label. Не задаёт тень/обводку.
FontSizeСвойство
public int FontSize { get; set; }Размер шрифта в пикселях, 16 по умолчанию. Имеет приоритет над theme font_size при назначенном LabelSettings. Используйте положительное число; setter не ограничивает его автоматически.
LineSpacingСвойство
public float LineSpacing { get; set; }Дополнительный промежуток строк в пикселях, 3 по умолчанию; допускает дробь. Не задаёт абзацный интервал, размер шрифта или ширину переноса.
OutlineColorСвойство
public Color OutlineColor { get; set; }Цвет основной обводки, белый по умолчанию. Для видимости нужна положительная OutlineSize и непрозрачный цвет. Не меняет цвета дополнительных слоёв.
OutlineSizeСвойство
public int OutlineSize { get; set; }Толщина основной обводки в пикселях, 0 по умолчанию. Неотрицательные дополнительные stacked-толщины прибавляются к ней. Не резервирует место в раскладке.
ParagraphSpacingСвойство
public float ParagraphSpacing { get; set; }Дополнительный промежуток абзацев в пикселях, 0 по умолчанию; допускает дробь. Разделитель абзацев задаётся на Label отдельно.
ShadowColorСвойство
public Color ShadowColor { get; set; }Цвет основной тени, прозрачный чёрный по умолчанию. Альфа 0 скрывает эту тень, но не отключает отдельные stacked-тени.
ShadowOffsetСвойство
public Vector2 ShadowOffset { get; set; }Смещение основной тени в локальных пикселях, (1, 1) по умолчанию. Не добавляет отступы в минимум Label; родительский clipping может обрезать эффект.
ShadowSizeСвойство
public int ShadowSize { get; set; }Толщина расширенного контура основной тени в пикселях, 1 по умолчанию. Это не радиус размытия. При прозрачном ShadowColor основная тень не видна.
StackedOutlineCountСвойство
public int StackedOutlineCount { get; set; }Неотрицательное число дополнительных обводок. Рост добавляет Size = 0/чёрный цвет, уменьшение удаляет хвост. Это не число основных OutlineSize-обводок.
StackedShadowCountСвойство
public int StackedShadowCount { get; set; }Неотрицательное число дополнительных теней. Новые слои имеют Offset = (1, 1), непрозрачный чёрный цвет и OutlineSize = 0. Уменьшение уничтожает хвостовые слои.
Методы40
AddStackedOutlinevoid
public void AddStackedOutline(int index = -1);Вставляет обводку по позиции 0…Count; -1 по умолчанию добавляет в конец. Новая толщина 0, цвет чёрный. Увеличивает Count, сдвигает индексы и испускает Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | -1 |
indexПозиция вставки 0…Count; -1 добавляет в конец.
AddStackedShadowvoid
public void AddStackedShadow(int index = -1);Вставляет тень по позиции 0…Count; -1 по умолчанию добавляет в конец. Новый слой непрозрачно-чёрный со смещением (1, 1) и контуром 0; настройте его явно.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | -1 |
indexПозиция вставки 0…Count; -1 добавляет в конец.
GetFontFont
public Font GetFont();Общая ссылка Font либо null для шрифта темы Label. Изменения назначенного Font передаются через Changed; замена отключает подписку от старого ресурса. Duplicate LabelSettings по умолчанию не делает Font независимым.
FontСохранённое значение: общая ссылка Font либо null.
GetFontColorColor
public Color GetFontColor();Цвет и альфа основного текста, белый по умолчанию. Изменение общего ресурса затрагивает все использующие его Label. Не задаёт тень/обводку.
ColorСохранённое значение: цвет основного текста.
GetFontSizeint
public int GetFontSize();Размер шрифта в пикселях, 16 по умолчанию. Имеет приоритет над theme font_size при назначенном LabelSettings. Используйте положительное число; setter не ограничивает его автоматически.
intСохранённое значение: размер шрифта в пикселях.
GetLineSpacingfloat
public float GetLineSpacing();Дополнительный промежуток строк в пикселях, 3 по умолчанию; допускает дробь. Не задаёт абзацный интервал, размер шрифта или ширину переноса.
floatСохранённое значение: добавочный межстрочный интервал в пикселях.
GetOutlineColorColor
public Color GetOutlineColor();Цвет основной обводки, белый по умолчанию. Для видимости нужна положительная OutlineSize и непрозрачный цвет. Не меняет цвета дополнительных слоёв.
ColorСохранённое значение: цвет основной обводки.
GetOutlineSizeint
public int GetOutlineSize();Толщина основной обводки в пикселях, 0 по умолчанию. Неотрицательные дополнительные stacked-толщины прибавляются к ней. Не резервирует место в раскладке.
intСохранённое значение: толщина основной обводки в пикселях.
GetParagraphSpacingfloat
public float GetParagraphSpacing();Дополнительный промежуток абзацев в пикселях, 0 по умолчанию; допускает дробь. Разделитель абзацев задаётся на Label отдельно.
floatСохранённое значение: добавочный межабзацный интервал в пикселях.
GetShadowColorColor
public Color GetShadowColor();Цвет основной тени, прозрачный чёрный по умолчанию. Альфа 0 скрывает эту тень, но не отключает отдельные stacked-тени.
ColorСохранённое значение: цвет основной тени.
GetShadowOffsetVector2
public Vector2 GetShadowOffset();Смещение основной тени в локальных пикселях, (1, 1) по умолчанию. Не добавляет отступы в минимум Label; родительский clipping может обрезать эффект.
Vector2Сохранённое значение: смещение основной тени в пикселях.
GetShadowSizeint
public int GetShadowSize();Толщина расширенного контура основной тени в пикселях, 1 по умолчанию. Это не радиус размытия. При прозрачном ShadowColor основная тень не видна.
intСохранённое значение: толщина контура основной тени в пикселях.
GetStackedOutlineColorColor
public Color GetStackedOutlineColor(int index);Возвращает цвет выбранной дополнительной обводки, чёрный для нового слоя.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
ColorВозвращает цвет выбранной дополнительной обводки, чёрный для нового слоя.
GetStackedOutlineCountint
public int GetStackedOutlineCount();Неотрицательное число дополнительных обводок. Рост добавляет Size = 0/чёрный цвет, уменьшение удаляет хвост. Это не число основных OutlineSize-обводок.
intСохранённое значение: число дополнительных обводок.
GetStackedOutlineSizeint
public int GetStackedOutlineSize(int index);Возвращает сохранённую добавочную толщину слоя, не суммарный радиус всей обводки. Индекс должен существовать.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
intВозвращает сохранённую добавочную толщину слоя, не суммарный радиус всей обводки. Индекс должен существовать.
GetStackedShadowColorColor
public Color GetStackedShadowColor(int index);Возвращает сохранённый цвет дополнительной тени; новый слой непрозрачно-чёрный.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
ColorВозвращает сохранённый цвет дополнительной тени; новый слой непрозрачно-чёрный.
GetStackedShadowCountint
public int GetStackedShadowCount();Неотрицательное число дополнительных теней. Новые слои имеют Offset = (1, 1), непрозрачный чёрный цвет и OutlineSize = 0. Уменьшение уничтожает хвостовые слои.
intСохранённое значение: число дополнительных теней.
GetStackedShadowOffsetVector2
public Vector2 GetStackedShadowOffset(int index);Возвращает сохранённое смещение слоя тени, (1, 1) для нового слоя.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
Vector2Возвращает сохранённое смещение слоя тени, (1, 1) для нового слоя.
GetStackedShadowOutlineSizeint
public int GetStackedShadowOutlineSize(int index);Возвращает сохранённую толщину контура слоя тени, 0 для нового слоя.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
intВозвращает сохранённую толщину контура слоя тени, 0 для нового слоя.
MoveStackedOutlinevoid
public void MoveStackedOutline(int fromIndex, int toPosition);Перемещает существующий слой в позицию вставки до удаления исходного, 0…Count. Это не конечный индекс: (0, 1) сохраняет порядок, (0, Count) переносит первый в конец. Даже неизменный порядок испускает Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
fromIndex | int | — |
toPosition | int | — |
fromIndexСуществующий индекс источника, 0…Count − 1.
toPositionПозиция вставки до удаления источника, 0…Count включительно; не конечный индекс.
MoveStackedShadowvoid
public void MoveStackedShadow(int fromIndex, int toPosition);Перемещает полный слой тени в позицию вставки 0…Count до удаления исходного. Индексы могут сдвинуться; даже перемещение без изменения порядка испускает Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
fromIndex | int | — |
toPosition | int | — |
fromIndexСуществующий индекс источника, 0…Count − 1.
toPositionПозиция вставки до удаления источника, 0…Count включительно; не конечный индекс.
RemoveStackedOutlinevoid
public void RemoveStackedOutline(int index);Удаляет существующую обводку по индексу 0…Count − 1. Последующие индексы уменьшаются; Count и список свойств обновляются, Changed испускается.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
RemoveStackedShadowvoid
public void RemoveStackedShadow(int index);Удаляет существующий слой тени и сдвигает следующие индексы. Индекс должен существовать; удаление не сохраняет данные для последующего роста Count.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
SetFontvoid
public void SetFont(Font font);Общая ссылка Font либо null для шрифта темы Label. Изменения назначенного Font передаются через Changed; замена отключает подписку от старого ресурса. Duplicate LabelSettings по умолчанию не делает Font независимым.
| Имя | Тип | По умолчанию |
|---|---|---|
font | Font | — |
fontОбщая ссылка Font либо null для шрифта темы Label. Изменения назначенного Font передаются через Changed; замена отключает подписку от старого ресурса. Duplicate LabelSettings по умолчанию не делает Font независимым.
SetFontColorvoid
public void SetFontColor(Color color);Цвет и альфа основного текста, белый по умолчанию. Изменение общего ресурса затрагивает все использующие его Label. Не задаёт тень/обводку.
| Имя | Тип | По умолчанию |
|---|---|---|
color | Color | — |
colorЦвет и альфа основного текста, белый по умолчанию. Изменение общего ресурса затрагивает все использующие его Label. Не задаёт тень/обводку.
SetFontSizevoid
public void SetFontSize(int size);Размер шрифта в пикселях, 16 по умолчанию. Имеет приоритет над theme font_size при назначенном LabelSettings. Используйте положительное число; setter не ограничивает его автоматически.
| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
sizeРазмер шрифта в пикселях, 16 по умолчанию. Имеет приоритет над theme font_size при назначенном LabelSettings. Используйте положительное число; setter не ограничивает его автоматически.
SetLineSpacingvoid
public void SetLineSpacing(float spacing);Дополнительный промежуток строк в пикселях, 3 по умолчанию; допускает дробь. Не задаёт абзацный интервал, размер шрифта или ширину переноса.
| Имя | Тип | По умолчанию |
|---|---|---|
spacing | float | — |
spacingДополнительный промежуток строк в пикселях, 3 по умолчанию; допускает дробь. Не задаёт абзацный интервал, размер шрифта или ширину переноса.
SetOutlineColorvoid
public void SetOutlineColor(Color color);Цвет основной обводки, белый по умолчанию. Для видимости нужна положительная OutlineSize и непрозрачный цвет. Не меняет цвета дополнительных слоёв.
| Имя | Тип | По умолчанию |
|---|---|---|
color | Color | — |
colorЦвет основной обводки, белый по умолчанию. Для видимости нужна положительная OutlineSize и непрозрачный цвет. Не меняет цвета дополнительных слоёв.
SetOutlineSizevoid
public void SetOutlineSize(int size);Толщина основной обводки в пикселях, 0 по умолчанию. Неотрицательные дополнительные stacked-толщины прибавляются к ней. Не резервирует место в раскладке.
| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
sizeТолщина основной обводки в пикселях, 0 по умолчанию. Неотрицательные дополнительные stacked-толщины прибавляются к ней. Не резервирует место в раскладке.
SetParagraphSpacingvoid
public void SetParagraphSpacing(float spacing);Дополнительный промежуток абзацев в пикселях, 0 по умолчанию; допускает дробь. Разделитель абзацев задаётся на Label отдельно.
| Имя | Тип | По умолчанию |
|---|---|---|
spacing | float | — |
spacingДополнительный промежуток абзацев в пикселях, 0 по умолчанию; допускает дробь. Разделитель абзацев задаётся на Label отдельно.
SetShadowColorvoid
public void SetShadowColor(Color color);Цвет основной тени, прозрачный чёрный по умолчанию. Альфа 0 скрывает эту тень, но не отключает отдельные stacked-тени.
| Имя | Тип | По умолчанию |
|---|---|---|
color | Color | — |
colorЦвет основной тени, прозрачный чёрный по умолчанию. Альфа 0 скрывает эту тень, но не отключает отдельные stacked-тени.
SetShadowOffsetvoid
public void SetShadowOffset(Vector2 offset);Смещение основной тени в локальных пикселях, (1, 1) по умолчанию. Не добавляет отступы в минимум Label; родительский clipping может обрезать эффект.
| Имя | Тип | По умолчанию |
|---|---|---|
offset | Vector2 | — |
offsetСмещение основной тени в локальных пикселях, (1, 1) по умолчанию. Не добавляет отступы в минимум Label; родительский clipping может обрезать эффект.
SetShadowSizevoid
public void SetShadowSize(int size);Толщина расширенного контура основной тени в пикселях, 1 по умолчанию. Это не радиус размытия. При прозрачном ShadowColor основная тень не видна.
| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
sizeТолщина расширенного контура основной тени в пикселях, 1 по умолчанию. Это не радиус размытия. При прозрачном ShadowColor основная тень не видна.
SetStackedOutlineColorvoid
public void SetStackedOutlineColor(int index, Color color);Задаёт цвет существующей дополнительной обводки. Не меняет её толщину и основной OutlineColor.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
color | Color | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
colorЗадаёт цвет существующей дополнительной обводки. Не меняет её толщину и основной OutlineColor.
SetStackedOutlineCountvoid
public void SetStackedOutlineCount(int count);Неотрицательное число дополнительных обводок. Рост добавляет Size = 0/чёрный цвет, уменьшение удаляет хвост. Это не число основных OutlineSize-обводок.
| Имя | Тип | По умолчанию |
|---|---|---|
count | int | — |
countНеотрицательное число дополнительных обводок. Рост добавляет Size = 0/чёрный цвет, уменьшение удаляет хвост. Это не число основных OutlineSize-обводок.
SetStackedOutlineSizevoid
public void SetStackedOutlineSize(int index, int size);Задаёт добавочную толщину существующего слоя в пикселях. Положительные значения суммируются с основной и предыдущими обводками; ≤0 не рисуется. Используйте неотрицательную толщину.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
size | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
sizeЗадаёт добавочную толщину существующего слоя в пикселях. Положительные значения суммируются с основной и предыдущими обводками; ≤0 не рисуется. Используйте неотрицательную толщину.
SetStackedShadowColorvoid
public void SetStackedShadowColor(int index, Color color);Задаёт цвет существующего слоя тени. Альфа 0 скрывает этот слой, не удаляя его и не меняя Count.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
color | Color | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
colorЗадаёт цвет существующего слоя тени. Альфа 0 скрывает этот слой, не удаляя его и не меняя Count.
SetStackedShadowCountvoid
public void SetStackedShadowCount(int count);Неотрицательное число дополнительных теней. Новые слои имеют Offset = (1, 1), непрозрачный чёрный цвет и OutlineSize = 0. Уменьшение уничтожает хвостовые слои.
| Имя | Тип | По умолчанию |
|---|---|---|
count | int | — |
countНеотрицательное число дополнительных теней. Новые слои имеют Offset = (1, 1), непрозрачный чёрный цвет и OutlineSize = 0. Уменьшение уничтожает хвостовые слои.
SetStackedShadowOffsetvoid
public void SetStackedShadowOffset(int index, Vector2 offset);Задаёт локальное пиксельное смещение существующей тени. Это не движение Label или добавление layout-отступа.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
offset | Vector2 | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
offsetЗадаёт локальное пиксельное смещение существующей тени. Это не движение Label или добавление layout-отступа.
SetStackedShadowOutlineSizevoid
public void SetStackedShadowOutlineSize(int index, int size);Задаёт неотрицательную толщину контура существующей тени в пикселях. Это расширение её формы, не Gaussian blur. Setter не ограничивает само число.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
size | int | — |
indexСуществующий индекс слоя с нуля, меньше соответствующего Count.
sizeЗадаёт неотрицательную толщину контура существующей тени в пикселях. Это расширение её формы, не Gaussian blur. Setter не ограничивает само число.