FontFile
Ресурс данных шрифта, настроек растеризации и кэшей.
FontFile — ресурс, который назначают элементу интерфейса или используют для измерения и рисования текста. Импортированный ресурс проекта загружайте через ResourceLoader.Load<FontFile>. Внешний динамический файл читает LoadDynamicFont; растровый BMFont с изображениями страниц — LoadBitmapFont. Внешние файлы должны существовать на машине пользователя. Лицензия шрифта определяет право его распространения.
В 1.0.0 LoadDynamicFont сбрасывает старое состояние, читает байты и возвращает Error.Ok без проверки декодирования. Проверьте доступность и допустимый размер файла, непустые Data, необходимые глифы и результат отображения. Непустые байты также не доказывают корректность формата. Для замены создавайте отдельный FontFile и сохраняйте прежний ресурс до принятия нового: автоматического отката нет. Параметры настраивайте после загрузки, поскольку загрузка их сбрасывает.
LoadBitmapFont читает текстовый BMFont или двоичный BMFont версии 3; изображения страниц ищутся относительно файла описания. Проверяйте Error и журнал. При ошибке ресурс уже может быть частично изменён, поэтому для повторной загрузки также используйте отдельный экземпляр. Data не является полным переносимым пакетом растрового шрифта с изображениями страниц.
Data/GetData возвращают копию байтов в C#. Изменённую копию нужно назначить обратно. SetData обновляет данные существующих кэшей, но не сбрасывает все настройки и сам не отправляет Changed. Не меняйте общий ресурс во время его использования интерфейсом без продуманного обновления потребителей.
GetCacheCount считает слоты кэша, а не символы, страницы или успешно распознанные начертания. Метаданные могут лениво создать первый слот. RemoveCache сдвигает последующие индексы; ClearCache сохраняет исходные Data. FontName, StyleName, FontStyle, FontWeight и FontStretch задают метаданные первого кэша, а не гарантированную генерацию жирного или курсивного начертания. Для нужного рисунка используйте подходящий файл или настройки вариаций.
AllowSystemFallback по умолчанию true. Наличие системных шрифтов зависит от ОС: для одинакового результата поставляйте необходимые шрифты и задавайте fallback явно. FixedSize — настройка растеризации, не размер текста элемента интерфейса.
Загрузка и использование шрифтов.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
FontFileКонструктор
public FontFile();Создаёт пустой ресурс без загруженного шрифта. Загрузите данные и только затем настройте параметры и назначьте потребителю.
Свойства22
AllowSystemFallbackСвойство
public bool AllowSystemFallback { get; set; }Разрешает поиск отсутствующих символов в системных шрифтах; по умолчанию true. Результат зависит от ОС и установленных шрифтов. Изменение отправляет Changed.
AntialiasingСвойство
public TextServer.FontAntialiasing Antialiasing { get; set; }Сглаживание растровых глифов: None — однобитное, Gray — полутоновое, Lcd — субпиксели экрана. По умолчанию Gray. Lcd подходит для горизонтального немасштабированного текста 2D; это отдельная настройка от SubpixelPositioning. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
DataСвойство
public byte[] Data { get; set; }Байты динамического шрифта. Getter возвращает managed-копию; назначьте изменённую копию обратно. Setter не проверяет формат и не отправляет Changed. Не полный пакет BMFont с изображениями.
DisableEmbeddedBitmapsСвойство
public bool DisableEmbeddedBitmaps { get; set; }Запрещает встроенные растровые варианты в динамическом шрифте; по умолчанию true. Не отключает загрузку отдельного BMFont. Для цветных и исключительно растровых шрифтов действуют ограничения формата и backend. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
FixedSizeСвойство
public int FixedSize { get; set; }Фиксированный размер растеризации; 0 отключает принудительный размер. Это не размер текста Control. При изменении обновляет кэши и отправляет Changed; загрузка сбрасывает значение.
FixedSizeScaleModeСвойство
public TextServer.FixedSizeScaleMode FixedSizeScaleMode { get; set; }Масштабирование при положительном FixedSize: Disable не масштабирует, IntegerOnly использует целый множитель, Enabled разрешает дробный. По умолчанию Disable. Для пиксельного растрового шрифта выбирайте IntegerOnly и проверяйте фактический масштаб интерфейса. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
FontNameСвойство
public string FontName { get; set; }Имя семейства в метаданных первого кэша. Изменение не загружает другой файл и само не отправляет Changed.
FontStretchСвойство
public int FontStretch { get; set; }Ширина в метаданных первого кэша, 50–200, обычная 100. Advanced backend ограничивает диапазон; это не масштаб Transform и не гарантированное растяжение глифов. Setter не отправляет Changed.
FontStyleСвойство
public TextServer.FontStyle FontStyle { get; set; }Флаги метаданных начертания первого кэша. Не обещают синтез жирного или курсивного рисунка; setter не отправляет Changed.
FontWeightСвойство
public int FontWeight { get; set; }Вес в метаданных первого кэша: диапазон 100–999, обычный 400, жирный 700. Advanced backend ограничивает диапазон. Не заменяет нужное начертание и не отправляет Changed.
ForceAutohinterСвойство
public bool ForceAutohinter { get; set; }Предпочитает автохинтинг встроенным инструкциям динамического шрифта; по умолчанию false. Не заменяет Hinting и не делает MSDF-шрифт хинтованным. Сравнивайте мелкий текст на целевом масштабе. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
GenerateMipmapsСвойство
public bool GenerateMipmaps { get; set; }Генерирует mip-уровни текстур шрифта; по умолчанию false. Может помочь при уменьшении текста, но требует памяти и подходящей фильтрации у потребителя. Само включение не гарантирует более чёткий текст. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
HintingСвойство
public TextServer.Hinting Hinting { get; set; }Подгонка динамического растрового шрифта к пиксельной сетке: None, Light или Normal; по умолчанию Light. Normal может менять метрики по обеим осям, в том числе ширины моноширинных символов. Для MSDF хинтинг не поддерживается. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
KeepRoundingRemaindersСвойство
public bool KeepRoundingRemainders { get; set; }Сохраняет остатки округления при выравнивании глифов по пикселям, уменьшая накопление ошибки интервалов; по умолчанию true. При субпиксельном позиционировании соответствующее округление горизонтальных advances не применяется. Это не включение кернинга. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
ModulateColorGlyphsСвойство
public bool ModulateColorGlyphs { get; set; }Применяет RGB-модуляцию также к цветным глифам; по умолчанию false. При false цветные глифы сохраняют собственный RGB, но прозрачность отрисовки учитывается. Настройка не добавляет отсутствующие цветные символы. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
MsdfPixelRangeСвойство
public int MsdfPixelRange { get; set; }Диапазон расстояний MSDF вокруг контура. У нового FontFile равен 16, после LoadDynamicFont — 14. Для обводки задавайте как минимум удвоенную максимальную толщину. Работает при включённом MSDF; большее значение само не повышает точность. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
MsdfSizeСвойство
public int MsdfSize { get; set; }Базовый размер генерации MSDF, не размер текста Control. У нового FontFile равен 48, после LoadDynamicFont — 128. Увеличивайте только при заметной нехватке точности: растут затраты генерации и памяти. Требует включённого MSDF. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
MultichannelSignedDistanceFieldСвойство
public bool MultichannelSignedDistanceField { get; set; }Использует многоканальное поле расстояний для масштабируемых глифов из векторных данных; по умолчанию false. Настраивайте MsdfSize и MsdfPixelRange после загрузки. Хинтинг недоступен, мелкий текст может выглядеть хуже; пересекающиеся контуры требуют проверки. Это не гарантия бесплатного масштабирования или качества любого файла. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
OpentypeFeatureOverridesСвойство
public Reckfell.Collections.Dictionary OpentypeFeatureOverrides { get; set; }Общие настройки функций OpenType: ключ-тег, например liga или kern, и целое значение. 0 выключает, положительное значение включает или выбирает вариант; отрицательные значения пропускаются при shaping. Это не оси variable font. Dictionary хранится совместно: для независимого снимка вызовите Duplicate. Setter и правка Dictionary не отправляют Changed; не рассчитывайте на автоматический перерасчёт уже подготовленного текста. Задавайте до использования, проверяйте поддержку функцией GetSupportedFeatureList. Загрузка файла сохраняет настройки.
OversamplingСвойство
public float Oversampling { get; set; }Множитель растеризации динамического шрифта: положительное значение переопределяет настройку viewport, 0 оставляет её. Явный положительный аргумент метода рисования имеет приоритет. MSDF и положительный FixedSize обходят oversampling. Это не масштаб текста; учитывайте память и время генерации. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
StyleNameСвойство
public string StyleName { get; set; }Имя начертания в метаданных первого кэша, например Regular. Не выбирает автоматически другой файл шрифта и не отправляет Changed.
SubpixelPositioningСвойство
public TextServer.SubpixelPositioning SubpixelPositioning { get; set; }Точность горизонтальной позиции глифа: Disabled, Auto, OneHalf или OneQuarter. У нового FontFile — Auto, после LoadDynamicFont — Disabled. Дополнительные позиции могут потребовать больше вариантов глифов в кэше. Не путайте с Lcd-сглаживанием. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
Методы108
ClearCachevoid
public void ClearCache();Очищает кэши и отправляет Changed, сохраняя Data и настройки ресурса. Это не выгрузка всех байтов шрифта.
ClearGlyphsvoid
public void ClearGlyphs(int cacheIndex, Vector2I size);Удаляет записи глифов выбранного размера/обводки, сохраняя страницы и ручной кернинг. Динамические глифы могут создаваться снова по запросу; вручную заданные bitmap-записи нужно восстановить. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
ClearKerningMapvoid
public void ClearKerningMap(int cacheIndex, int size);Очищает ручную таблицу пары для размера, не отключая встроенный кернинг исходного шрифта. Поэтому GetKerning после очистки не обязан вернуть ноль. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
ClearSizeCachevoid
public void ClearSizeCache(int cacheIndex);Удаляет все кэши размеров выбранного RID вместе с их глифами, страницами и ручными метриками. Не удаляет исходные Data и сам слот FontFile. Changed не отправляется. Для ручного bitmap-кэша данные нужно построить заново.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
ClearTexturesvoid
public void ClearTextures(int cacheIndex, Vector2I size);Очищает страницы, сохраняя записи глифов и их индексы. Последующее обращение может обнаружить недействительный атлас и попытаться пересоздать глифы; для ручного bitmap-кэша этого недостаточно. Пересоберите размер целиком или используйте новый FontFile. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
GetAntialiasingTextServer.FontAntialiasing
public TextServer.FontAntialiasing GetAntialiasing();Читает Antialiasing без оценки качества отображения. Сглаживание растровых глифов: None — однобитное, Gray — полутоновое, Lcd — субпиксели экрана. По умолчанию Gray. Lcd подходит для горизонтального немасштабированного текста 2D; это отдельная настройка от SubpixelPositioning.
TextServer.FontAntialiasingТекущее значение Antialiasing. Новый ресурс: TextServer.FontAntialiasing.Gray.
GetCacheAscentfloat
public float GetCacheAscent(int cacheIndex, int size);Читает расстояние над базовой линией. Запрос может создать размерный кэш; для MSDF/масштабируемого FixedSize backend пересчитывает результат под запрошенный размер.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
floatТекущее эффективное значение метрики для запрошенного размера; не обязательно исходное значение setter при MSDF/FixedSize.
GetCacheCountint
public int GetCacheCount();Возвращает число слотов внутренних font RID. Не число глифов, файлов или проверенных начертаний; слот может создаваться лениво при обращении к метаданным.
intЧисло слотов кэша; не результат проверки данных шрифта.
GetCacheDescentfloat
public float GetCacheDescent(int cacheIndex, int size);Читает расстояние под базовой линией. Запрос может создать размерный кэш; для MSDF/масштабируемого FixedSize backend пересчитывает результат под запрошенный размер.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
floatТекущее эффективное значение метрики для запрошенного размера; не обязательно исходное значение setter при MSDF/FixedSize.
GetCacheScalefloat
public float GetCacheScale(int cacheIndex, int size);Читает масштаб цветного bitmap-кэша. Запрос может создать размерный кэш; для MSDF/масштабируемого FixedSize backend пересчитывает результат под запрошенный размер.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
floatТекущее эффективное значение метрики для запрошенного размера; не обязательно исходное значение setter при MSDF/FixedSize.
GetCacheUnderlinePositionfloat
public float GetCacheUnderlinePosition(int cacheIndex, int size);Читает положение подчёркивания относительно базовой линии. Запрос может создать размерный кэш; для MSDF/масштабируемого FixedSize backend пересчитывает результат под запрошенный размер.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
floatТекущее эффективное значение метрики для запрошенного размера; не обязательно исходное значение setter при MSDF/FixedSize.
GetCacheUnderlineThicknessfloat
public float GetCacheUnderlineThickness(int cacheIndex, int size);Читает толщину подчёркивания. Запрос может создать размерный кэш; для MSDF/масштабируемого FixedSize backend пересчитывает результат под запрошенный размер.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
floatТекущее эффективное значение метрики для запрошенного размера; не обязательно исходное значение setter при MSDF/FixedSize.
GetCharFromGlyphIndexlong
public long GetCharFromGlyphIndex(int size, int glyphIndex);Ищет Unicode code point по индексу глифа первого кэша. Для динамического шрифта это поиск по cmap, не обратное преобразование сформированной строки: несколько символов могут делить глиф. Не используйте для восстановления лигатур, UTF-16 позиции или произвольного bitmap-кэша.
| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
glyphIndex | int | — |
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
glyphIndexИндекс глифа первого кэша; обратный поиск не гарантирует однозначного восстановления символа.
longЧисловая Unicode code point либо 0 без найденного соответствия в динамическом шрифте; не строка.
GetDatabyte[]
public byte[] GetData();Возвращает копию исходных байтов в C#. Изменение результата само не меняет FontFile; используйте SetData. Для BMFont изображения страниц сюда не упаковываются.
byte[]Новый byte[] с данными, возможно пустой.
GetDisableEmbeddedBitmapsbool
public bool GetDisableEmbeddedBitmaps();Читает DisableEmbeddedBitmaps без оценки качества отображения. Запрещает встроенные растровые варианты в динамическом шрифте; по умолчанию true. Не отключает загрузку отдельного BMFont. Для цветных и исключительно растровых шрифтов действуют ограничения формата и backend.
boolТекущее значение DisableEmbeddedBitmaps. Новый ресурс: true.
GetEmboldenfloat
public float GetEmbolden(int cacheIndex);Читает силу синтетического утолщения выбранного кэша; по умолчанию 0. Это не вес реального начертания.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
floatТекущее сохранённое значение выбранного кэша; не проверка визуального результата.
GetExtraBaselineOffsetfloat
public float GetExtraBaselineOffset(int cacheIndex);Читает дополнительное смещение базовой линии как долю высоты шрифта; по умолчанию 0. Не пиксели.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
floatТекущее сохранённое значение выбранного кэша; не проверка визуального результата.
GetExtraSpacinglong
public long GetExtraSpacing(int cacheIndex, TextServer.SpacingType spacing);Читает дополнительный интервал выбранного типа в пикселях, не коэффициент размера. По умолчанию 0.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
spacing | TextServer.SpacingType | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
spacingGlyph, Space, Top или Bottom из TextServer.SpacingType.
longТекущее сохранённое значение выбранного кэша; не проверка визуального результата.
GetFaceIndexlong
public long GetFaceIndex(int cacheIndex);Читает сохранённый индекс начертания в коллекции, по умолчанию 0. Сам getter не подтверждает наличие такого начертания в файле.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
longТекущее сохранённое значение выбранного кэша; не проверка визуального результата.
GetFixedSizeint
public int GetFixedSize();Читает настройку FixedSize, без измерения высоты текста или глифов.
intТекущее целое FixedSize; по умолчанию 0.
GetFixedSizeScaleModeTextServer.FixedSizeScaleMode
public TextServer.FixedSizeScaleMode GetFixedSizeScaleMode();Читает FixedSizeScaleMode без оценки качества отображения. Масштабирование при положительном FixedSize: Disable не масштабирует, IntegerOnly использует целый множитель, Enabled разрешает дробный. По умолчанию Disable. Для пиксельного растрового шрифта выбирайте IntegerOnly и проверяйте фактический масштаб интерфейса.
TextServer.FixedSizeScaleModeТекущее значение FixedSizeScaleMode. Новый ресурс: TextServer.FixedSizeScaleMode.Disable.
GetGenerateMipmapsbool
public bool GetGenerateMipmaps();Читает GenerateMipmaps без оценки качества отображения. Генерирует mip-уровни текстур шрифта; по умолчанию false. Может помочь при уменьшении текста, но требует памяти и подходящей фильтрации у потребителя. Само включение не гарантирует более чёткий текст.
boolТекущее значение GenerateMipmaps. Новый ресурс: false.
GetGlyphAdvanceVector2
public Vector2 GetGlyphAdvance(int cacheIndex, int size, int glyph);Читает перемещение пера, при необходимости создавая динамический глиф. MSDF/FixedSize, embolden и округление могут влиять на возвращённый результат. Не используйте как размер видимых пикселей или всего сформированного текста.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
glyph | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
Vector2Vector2 перемещения пера, возможно Zero; не размер картинки.
GetGlyphIndexint
public int GetGlyphIndex(int size, long @char, long variationSelector);Преобразует Unicode code point и необязательный variation selector в индекс глифа первого кэша. Это не индекс UTF-16 char в строке и не полноценный shaping: лигатуры/контекстные формы определяются TextServer. Для ручного bitmap-шрифта backend может использовать сам код символа как ключ.
| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
char | long | — |
variationSelector | long | — |
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
charКорректный Unicode scalar value 0–0x10FFFF вне диапазона суррогатов 0xD800–0xDFFF. Дополнительный символ передавайте одной кодовой точкой, не отдельным UTF-16 суррогатом.
variationSelector0 без селектора либо корректный Unicode variation selector, поддержанный файлом. Не код оси variable font.
intИндекс глифа; 0 обычно означает отсутствие отображения в динамическом шрифте, а не успешное shaping.
GetGlyphListint[]
public int[] GetGlyphList(int cacheIndex, Vector2I size);Возвращает ключи уже имеющихся записей глифов выбранного кэша, не все символы файла. Ключи могут включать варианты субпиксельного/LCD-кэша; порядок не гарантирован. Результат C# — копия.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
int[]Новый int[] ключей записей, пустой без глифов; порядок не гарантирован.
GetGlyphOffsetVector2
public Vector2 GetGlyphOffset(int cacheIndex, Vector2I size, int glyph);Читает локальное смещение глифа с учётом поддерживаемого масштабирования MSDF/FixedSize. Это не позиция Entity или Control. Запрос может подготовить динамическую запись.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
Vector2Vector2 локального смещения, возможно Zero.
GetGlyphSizeVector2
public Vector2 GetGlyphSize(int cacheIndex, Vector2I size, int glyph);Возвращает размер рисуемого прямоугольника, возможно нулевой для невидимого символа. Масштабирование MSDF/FixedSize может влиять на результат. Это не шаг между символами.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
Vector2Vector2 размеров рисуемого прямоугольника, возможно Zero.
GetGlyphTextureIdxint
public int GetGlyphTextureIdx(int cacheIndex, Vector2I size, int glyph);Читает индекс страницы; Advanced backend возвращает -1, если нет отображаемой текстуры/глиф не подготовлен. Проверяйте индекс относительно GetTextureCount. После RemoveTexture даже допустимый индекс может ссылаться на другую страницу.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
intИндекс страницы либо -1 без доступной текстуры в Advanced backend.
GetGlyphUVRectRect2
public Rect2 GetGlyphUVRect(int cacheIndex, Vector2I size, int glyph);Читает прямоугольник источника в пикселях страницы атласа. Это не экранные координаты и не нормализованные UV. Запрос может создать динамический глиф.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
Rect2Rect2 в пикселях исходной страницы.
GetHintingTextServer.Hinting
public TextServer.Hinting GetHinting();Читает Hinting без оценки качества отображения. Подгонка динамического растрового шрифта к пиксельной сетке: None, Light или Normal; по умолчанию Light. Normal может менять метрики по обеим осям, в том числе ширины моноширинных символов. Для MSDF хинтинг не поддерживается.
TextServer.HintingТекущее значение Hinting. Новый ресурс: TextServer.Hinting.Light.
GetKeepRoundingRemaindersbool
public bool GetKeepRoundingRemainders();Читает KeepRoundingRemainders без оценки качества отображения. Сохраняет остатки округления при выравнивании глифов по пикселям, уменьшая накопление ошибки интервалов; по умолчанию true. При субпиксельном позиционировании соответствующее округление горизонтальных advances не применяется. Это не включение кернинга.
boolТекущее значение KeepRoundingRemainders. Новый ресурс: true.
GetKerningVector2
public Vector2 GetKerning(int cacheIndex, int size, Vector2I glyphPair);Читает корректировку ручной пары; без неё backend может обратиться к данным исходного шрифта. Это не результат полного shaping строки и не список OpenType-правил.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
glyphPair | Vector2I | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
glyphPairVector2I(левый индекс, правый индекс), порядок важен. Это не две Unicode code points для динамического шрифта.
Vector2Vector2 корректировки, зависящей от ручной записи/backend/исходного файла.
GetKerningListReckfell.Collections.Array<Vector2I>
public Reckfell.Collections.Array<Vector2I> GetKerningList(int cacheIndex, int size);Возвращает пары глифов из ручной таблицы кернинга этого размера, не все пары исходного OpenType-файла. Порядок не гарантирован. Typed Array не является IDisposable.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
Reckfell.Collections.Array<Vector2I>Typed Array упорядоченных пар ручной таблицы.
GetLanguageSupportOverridebool
public bool GetLanguageSupportOverride(string language);Читает только явную запись языка. false означает и отсутствие записи, и явный запрет; различайте их через GetLanguageSupportOverrides. Запись «*» здесь не разрешается автоматически. Это не проверка наличия символов.
| Имя | Тип | По умолчанию |
|---|---|---|
language | string | — |
languageТочный ключ языка, например en или ru, либо «*» для общего решения. Регистр/формат не нормализуются этими методами; используйте согласованные ключи.
boolСохранённый bool либо false при отсутствии точного ключа.
GetLanguageSupportOverridesstring[]
public string[] GetLanguageSupportOverrides();Возвращает ключи явных языковых переопределений, включая записи со значением false и «*». Порядок не гарантирован; это не список всех языков, которые способен показать шрифт.
string[]Новый managed string[] ключей; пустой без явных записей.
GetMsdfPixelRangeint
public int GetMsdfPixelRange();Читает MsdfPixelRange без оценки качества отображения. Диапазон расстояний MSDF вокруг контура. У нового FontFile равен 16, после LoadDynamicFont — 14. Для обводки задавайте как минимум удвоенную максимальную толщину. Работает при включённом MSDF; большее значение само не повышает точность.
intТекущее значение MsdfPixelRange. Новый ресурс: 16; LoadDynamicFont: 14.
GetMsdfSizeint
public int GetMsdfSize();Читает MsdfSize без оценки качества отображения. Базовый размер генерации MSDF, не размер текста Control. У нового FontFile равен 48, после LoadDynamicFont — 128. Увеличивайте только при заметной нехватке точности: растут затраты генерации и памяти. Требует включённого MSDF.
intТекущее значение MsdfSize. Новый ресурс: 48; LoadDynamicFont: 128.
GetOpentypeFeatureOverridesReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary GetOpentypeFeatureOverrides();Возвращает Dictionary с общей таблицей функций OpenType. Изменения результата меняют данные ресурса без Changed; Duplicate даёт отдельную таблицу. Освобождайте managed wrapper после чтения. Наличие тега не доказывает поддержку файлом.
Reckfell.Collections.DictionaryWrapper общей Dictionary, не глубокая копия; по умолчанию таблица пустая.
GetOversamplingfloat
public float GetOversampling();Читает Oversampling без оценки качества отображения. Множитель растеризации динамического шрифта: положительное значение переопределяет настройку viewport, 0 оставляет её. Явный положительный аргумент метода рисования имеет приоритет. MSDF и положительный FixedSize обходят oversampling. Это не масштаб текста; учитывайте память и время генерации.
floatТекущее значение Oversampling. Новый ресурс: 0.
GetScriptSupportOverridebool
public bool GetScriptSupportOverride(string script);Читает явную запись письменности. false также возвращается без записи; наличие проверяйте по GetScriptSupportOverrides. Не разрешает «*», не анализирует глифы и не относится к C#-скриптам.
| Имя | Тип | По умолчанию |
|---|---|---|
script | string | — |
scriptКод письменности, например Latn или Cyrl, либо «*». Ключ сопоставляется точно; это не имя файла скрипта.
boolСохранённый bool либо false при отсутствии точного ключа.
GetScriptSupportOverridesstring[]
public string[] GetScriptSupportOverrides();Возвращает ключи переопределений письменностей, включая false и «*», без гарантии порядка. Это не автоматически обнаруженный список письменностей файла.
string[]Новый managed string[] ключей; пустой без явных записей.
GetSizeCacheListReckfell.Collections.Array<Vector2I>
public Reckfell.Collections.Array<Vector2I> GetSizeCacheList(int cacheIndex);Список обычных кэшей размера выбранного font RID: Vector2I(размер, толщина обводки). Advanced backend исключает записи viewport oversampling; это не полный отчёт памяти. Сам запрос может лениво создать RID и базовый кэш размера.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
Reckfell.Collections.Array<Vector2I>Typed Array ключей Vector2I; не IDisposable и не полный список viewport oversampling-кэшей.
GetSubpixelPositioningTextServer.SubpixelPositioning
public TextServer.SubpixelPositioning GetSubpixelPositioning();Читает SubpixelPositioning без оценки качества отображения. Точность горизонтальной позиции глифа: Disabled, Auto, OneHalf или OneQuarter. У нового FontFile — Auto, после LoadDynamicFont — Disabled. Дополнительные позиции могут потребовать больше вариантов глифов в кэше. Не путайте с Lcd-сглаживанием.
TextServer.SubpixelPositioningТекущее значение SubpixelPositioning. Новый ресурс: TextServer.SubpixelPositioning.Auto; LoadDynamicFont: Disabled.
GetTextureCountint
public int GetTextureCount(int cacheIndex, Vector2I size);Число страниц атласа для выбранного размера/обводки, не число глифов. Запрос может создать размерный кэш. Не доказывает, что все записи глифов ссылаются на правильные страницы.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
intЧисло страниц этого кэша, возможно 0.
GetTextureImageImage
public Image GetTextureImage(int cacheIndex, Vector2I size, int textureIndex);Возвращает общую ссылку Image страницы, не копию пикселей и не снимок экрана. Изменение Image может затронуть других потребителей; для независимого редактирования создайте копию. Изменение Image само не гарантирует пересоздание текстуры атласа.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
textureIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
textureIndexСуществующий индекс страницы от 0 до GetTextureCount()-1; SetTextureImage/SetTextureOffsets могут расширить таблицу при большем неотрицательном индексе.
ImageОбщая ссылка Image страницы; не независимая копия.
GetTextureOffsetsint[]
public int[] GetTextureOffsets(int cacheIndex, Vector2I size, int textureIndex);Читает данные полок страницы группами x, y, ширина, высота. C# возвращает копию int[]; назначьте изменения через SetTextureOffsets. Это не прямоугольники глифов.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
textureIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
textureIndexСуществующий индекс страницы от 0 до GetTextureCount()-1; SetTextureImage/SetTextureOffsets могут расширить таблицу при большем неотрицательном индексе.
int[]Новый int[] групп по четыре: x, y, ширина, высота.
GetTransformTransform2D
public Transform2D GetTransform(int cacheIndex);Читает матрицу преобразования контура; по умолчанию Identity. Это не глобальное преобразование Control.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
Transform2DТекущее сохранённое значение выбранного кэша; не проверка визуального результата.
GetVariationCoordinatesReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary GetVariationCoordinates(int cacheIndex);Возвращает общую таблицу координат осей выбранного кэша. В отличие от FontVariation, getter здесь не создаёт независимую копию. Правка alias обходит setter и сброс кэша; для изменений получите Duplicate и вызовите SetVariationCoordinates.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
Reckfell.Collections.DictionaryОбщий wrapper Dictionary; для независимого снимка Duplicate.
IsAllowSystemFallbackbool
public bool IsAllowSystemFallback();Читает разрешение системного fallback, а не наличие шрифта или нужного символа.
boolТекущее разрешение, по умолчанию true.
IsForceAutohinterbool
public bool IsForceAutohinter();Читает ForceAutohinter без оценки качества отображения. Предпочитает автохинтинг встроенным инструкциям динамического шрифта; по умолчанию false. Не заменяет Hinting и не делает MSDF-шрифт хинтованным. Сравнивайте мелкий текст на целевом масштабе.
boolТекущее значение ForceAutohinter. Новый ресурс: false.
IsModulateColorGlyphsbool
public bool IsModulateColorGlyphs();Читает ModulateColorGlyphs без оценки качества отображения. Применяет RGB-модуляцию также к цветным глифам; по умолчанию false. При false цветные глифы сохраняют собственный RGB, но прозрачность отрисовки учитывается. Настройка не добавляет отсутствующие цветные символы.
boolТекущее значение ModulateColorGlyphs. Новый ресурс: false.
IsMultichannelSignedDistanceFieldbool
public bool IsMultichannelSignedDistanceField();Читает MultichannelSignedDistanceField без оценки качества отображения. Использует многоканальное поле расстояний для масштабируемых глифов из векторных данных; по умолчанию false. Настраивайте MsdfSize и MsdfPixelRange после загрузки. Хинтинг недоступен, мелкий текст может выглядеть хуже; пересекающиеся контуры требуют проверки. Это не гарантия бесплатного масштабирования или качества любого файла.
boolТекущее значение MultichannelSignedDistanceField. Новый ресурс: false.
LoadBitmapFontError
public Error LoadBitmapFont(string path);Загружает текстовый BMFont или двоичный BMFont версии 3 и изображения страниц относительно его каталога. Сбрасывает прежнее состояние; ошибка может оставить частичные изменения. Проверяйте Error и журнал.
| Имя | Тип | По умолчанию |
|---|---|---|
path | string | — |
pathПуть через FileAccess: asset://, user:// или доступный путь ОС. Для BMFont рядом должны быть изображения страниц.
ErrorError.Ok при завершении загрузчика либо ошибка; проблемы открытия, версии или страниц могут дать Error.CantCreate. Проверяйте журнал.
LoadDynamicFontError
public Error LoadDynamicFont(string path);Сбрасывает состояние и читает файл в Data. В 1.0.0 Error.Ok не подтверждает чтение или декодирование: проверяйте файл, данные, нужные глифы и отображение. Настройки задавайте после загрузки; отката нет.
| Имя | Тип | По умолчанию |
|---|---|---|
path | string | — |
pathПуть через FileAccess: asset://, user:// или доступный путь ОС. Для BMFont рядом должны быть изображения страниц.
ErrorВ этой реализации Error.Ok после попытки чтения; не используйте как единственный признак успешной загрузки.
RemoveCachevoid
public void RemoveCache(int cacheIndex);Удаляет слот и освобождает его RID, сдвигает последующие индексы и отправляет Changed. Сохранённые индексы после удаления перепроверьте.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
cacheIndexТекущий индекс от 0 до GetCacheCount()-1; после удаления индексы сдвигаются.
RemoveGlyphvoid
public void RemoveGlyph(int cacheIndex, Vector2I size, int glyph);Удаляет одну запись кэша, сохраняя страницы, кернинг и данные шрифта. Не удаляет символ из исходного файла; динамическая запись может появиться снова при обращении. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
RemoveKerningvoid
public void RemoveKerning(int cacheIndex, int size, Vector2I glyphPair);Удаляет ручную корректировку упорядоченной пары, возвращая обычное поведение backend/файла. Не удаляет глифы; нет записи — нет изменений. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
glyphPair | Vector2I | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
glyphPairVector2I(левый индекс, правый индекс), порядок важен. Это не две Unicode code points для динамического шрифта.
RemoveLanguageSupportOverridevoid
public void RemoveLanguageSupportOverride(string language);Удаляет точный ключ, если он есть, и передаёт удаление существующим кэшам. Это возврат к обычному выбору/общей записи «*», а не явный запрет. Отсутствующий ключ ничего не меняет; Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
language | string | — |
languageТочный ключ языка, например en или ru, либо «*» для общего решения. Регистр/формат не нормализуются этими методами; используйте согласованные ключи.
RemoveScriptSupportOverridevoid
public void RemoveScriptSupportOverride(string script);Удаляет явное решение письменности и восстанавливает выбор по файлу/записи «*». Не удаляет глифы. Отсутствующий ключ безопасно игнорируется; Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
script | string | — |
scriptКод письменности, например Latn или Cyrl, либо «*». Ключ сопоставляется точно; это не имя файла скрипта.
RemoveSizeCachevoid
public void RemoveSizeCache(int cacheIndex, Vector2I size);Удаляет один кэш размера/обводки, сохраняя RID и исходные данные. Берите ключ из GetSizeCacheList; MSDF, FixedSize и oversampling влияют на эффективные ключи. Нет записи — нет изменений. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
RemoveTexturevoid
public void RemoveTexture(int cacheIndex, Vector2I size, int textureIndex);Удаляет страницу и сдвигает следующие страницы. Дефект 1.0.0: индексы в глифах не переназначаются; допустимый старый индекс может уже указывать на чужое изображение, а вышедший за границы — вызвать диагностику/повторную растеризацию. Не удаляйте страницу используемого bitmap-атласа без пересборки всех зависимых записей. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
textureIndex | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
textureIndexСуществующий индекс страницы от 0 до GetTextureCount()-1; SetTextureImage/SetTextureOffsets могут расширить таблицу при большем неотрицательном индексе.
RenderGlyphvoid
public void RenderGlyph(int cacheIndex, Vector2I size, int index);Заранее подготавливает динамический глиф и необходимые варианты в кэше. Принимает индекс глифа, не Unicode code point. Не рисует текст на экране и не заполняет вручную отсутствующий bitmap-атлас. Настройте качество до подготовки.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
index | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
indexИндекс динамического глифа из GetGlyphIndex или shaping, не Unicode code point.
RenderRangevoid
public void RenderRange(int cacheIndex, Vector2I size, long start, long end);Заранее подготавливает динамические глифы диапазона Unicode, включая обе границы. Это не диапазон индексов глифов или UTF-16. Ограничивайте набор нужными символами: широкий диапазон требует времени и памяти. Не заменяет shaping и не рисует текст.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
start | long | — |
end | long | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
startПервая Unicode code point диапазона, включительно; используйте корректные scalar values и небольшой нужный диапазон.
endПоследняя Unicode code point, включительно, не меньше start. Не конец полуинтервала.
SetAllowSystemFallbackvoid
public void SetAllowSystemFallback(bool allowSystemFallback);Разрешает поиск отсутствующих символов в системных шрифтах; по умолчанию true. Результат зависит от ОС и установленных шрифтов. Изменение отправляет Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
allowSystemFallback | bool | — |
allowSystemFallbacktrue разрешает fallback ОС; false запрещает его, но не добавляет недостающие глифы.
SetAntialiasingvoid
public void SetAntialiasing(TextServer.FontAntialiasing antialiasing);Сглаживание растровых глифов: None — однобитное, Gray — полутоновое, Lcd — субпиксели экрана. По умолчанию Gray. Lcd подходит для горизонтального немасштабированного текста 2D; это отдельная настройка от SubpixelPositioning. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
antialiasing | TextServer.FontAntialiasing | — |
antialiasingНовое значение Antialiasing. Сглаживание растровых глифов: None — однобитное, Gray — полутоновое, Lcd — субпиксели экрана. По умолчанию Gray. Lcd подходит для горизонтального немасштабированного текста 2D; это отдельная настройка от SubpixelPositioning.
SetCacheAscentvoid
public void SetCacheAscent(int cacheIndex, int size, float ascent);Задаёт расстояние над базовой линией для кэша размера. Это ручная метрика, не изменение исходных контуров или размера Control. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
ascent | float | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
ascentКонечная метрика над базовой линией в координатах размера, обычно неотрицательная.
SetCacheDescentvoid
public void SetCacheDescent(int cacheIndex, int size, float descent);Задаёт расстояние под базовой линией для кэша размера. Это ручная метрика, не изменение исходных контуров или размера Control. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
descent | float | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
descentКонечная метрика под базовой линией в координатах размера, обычно неотрицательная.
SetCacheScalevoid
public void SetCacheScale(int cacheIndex, int size, float scale);Задаёт масштаб цветного bitmap-кэша для кэша размера. Это ручная метрика, не изменение исходных контуров или размера Control. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
scale | float | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
scaleПоложительный конечный множитель масштаба bitmap-кэша, не Transform элемента интерфейса.
SetCacheUnderlinePositionvoid
public void SetCacheUnderlinePosition(int cacheIndex, int size, float underlinePosition);Задаёт положение подчёркивания относительно базовой линии для кэша размера. Это ручная метрика, не изменение исходных контуров или размера Control. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
underlinePosition | float | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
underlinePositionКонечное смещение подчёркивания от базовой линии.
SetCacheUnderlineThicknessvoid
public void SetCacheUnderlineThickness(int cacheIndex, int size, float underlineThickness);Задаёт толщину подчёркивания для кэша размера. Это ручная метрика, не изменение исходных контуров или размера Control. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
underlineThickness | float | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
underlineThicknessНеотрицательная конечная толщина подчёркивания.
SetData2 перегрузки
public void SetData(byte[] data);Заменяет байты шрифта и передаёт их существующим кэшам. Не выполняет полный reset и не отправляет Changed; пустые или повреждённые данные не превращаются в проверенный шрифт.
| Имя | Тип | По умолчанию |
|---|---|---|
data | byte[] | — |
dataБайты поддерживаемого динамического формата; передача не валидирует декодирование. C#-перегрузка копирует входные данные.
public void SetData(ReadOnlySpan<byte> data);Заменяет байты шрифта и передаёт их существующим кэшам. Не выполняет полный reset и не отправляет Changed; пустые или повреждённые данные не превращаются в проверенный шрифт.
| Имя | Тип | По умолчанию |
|---|---|---|
data | ReadOnlySpan<byte> | — |
dataБайты поддерживаемого динамического формата; передача не валидирует декодирование. C#-перегрузка копирует входные данные.
SetDisableEmbeddedBitmapsvoid
public void SetDisableEmbeddedBitmaps(bool disableEmbeddedBitmaps);Запрещает встроенные растровые варианты в динамическом шрифте; по умолчанию true. Не отключает загрузку отдельного BMFont. Для цветных и исключительно растровых шрифтов действуют ограничения формата и backend. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
disableEmbeddedBitmaps | bool | — |
disableEmbeddedBitmapsНовое значение DisableEmbeddedBitmaps. Запрещает встроенные растровые варианты в динамическом шрифте; по умолчанию true. Не отключает загрузку отдельного BMFont. Для цветных и исключительно растровых шрифтов действуют ограничения формата и backend.
SetEmboldenvoid
public void SetEmbolden(int cacheIndex, float strength);Задаёт синтетическое утолщение контура: 0 без изменения, положительное утолщает, отрицательное утоньшает. Не заменяет качественное начертание или ось weight. Смена значения может очистить кэш backend. Прямое изменение кэша не отправляет Changed; настраивайте до использования ресурса.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
strength | float | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
strengthКонечная сила синтетического утолщения, 0 без изменения.
SetExtraBaselineOffsetvoid
public void SetExtraBaselineOffset(int cacheIndex, float baselineOffset);Задаёт дополнительное смещение базовой линии в долях высоты шрифта, не в пикселях. Отличается от SetGlyphOffset и Transform Control. Прямое изменение кэша не отправляет Changed; настраивайте до использования ресурса.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
baselineOffset | float | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
baselineOffsetКонечное смещение в долях высоты шрифта, не пиксели.
SetExtraSpacingvoid
public void SetExtraSpacing(int cacheIndex, TextServer.SpacingType spacing, long value);Задаёт дополнительные пиксели для Glyph, Space, Top или Bottom. Это не ручная таблица кернинга пары и не размер шрифта. Прямое изменение кэша не отправляет Changed; настраивайте до использования ресурса.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
spacing | TextServer.SpacingType | — |
value | long | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
spacingGlyph, Space, Top или Bottom из TextServer.SpacingType.
valueДополнительный интервал в пикселях; учитывайте влияние отрицательных значений на наложение текста.
SetFaceIndexvoid
public void SetFaceIndex(int cacheIndex, long faceIndex);Выбирает начертание внутри коллекции шрифтов; индекс неотрицательный, меньше 32767 и фактического числа начертаний. Это не индекс вариации или кэша. Наличие численно допустимого значения ещё не подтверждает декодирование файла. Прямое изменение кэша не отправляет Changed; настраивайте до использования ресурса.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
faceIndex | long | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
faceIndexИндекс существующего начертания коллекции; 0 для обычного одноначертательного файла.
SetFixedSizevoid
public void SetFixedSize(int fixedSize);Фиксированный размер растеризации; 0 отключает принудительный размер. Это не размер текста Control. При изменении обновляет кэши и отправляет Changed; загрузка сбрасывает значение.
| Имя | Тип | По умолчанию |
|---|---|---|
fixedSize | int | — |
fixedSize0 для отключения принудительного размера либо положительный размер растеризации.
SetFixedSizeScaleModevoid
public void SetFixedSizeScaleMode(TextServer.FixedSizeScaleMode fixedSizeScaleMode);Масштабирование при положительном FixedSize: Disable не масштабирует, IntegerOnly использует целый множитель, Enabled разрешает дробный. По умолчанию Disable. Для пиксельного растрового шрифта выбирайте IntegerOnly и проверяйте фактический масштаб интерфейса. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
fixedSizeScaleMode | TextServer.FixedSizeScaleMode | — |
fixedSizeScaleModeНовое значение FixedSizeScaleMode. Масштабирование при положительном FixedSize: Disable не масштабирует, IntegerOnly использует целый множитель, Enabled разрешает дробный. По умолчанию Disable. Для пиксельного растрового шрифта выбирайте IntegerOnly и проверяйте фактический масштаб интерфейса.
SetFontNamevoid
public void SetFontName(string name);Имя семейства в метаданных первого кэша. Изменение не загружает другой файл и само не отправляет Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
name | string | — |
nameИмя в метаданных первого кэша, не путь к файлу.
SetFontStretchvoid
public void SetFontStretch(int stretch);Ширина в метаданных первого кэша, 50–200, обычная 100. Advanced backend ограничивает диапазон; это не масштаб Transform и не гарантированное растяжение глифов. Setter не отправляет Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
stretch | int | — |
stretchЗначение ширины 50–200, обычная 100.
SetFontStylevoid
public void SetFontStyle(TextServer.FontStyle style);Флаги метаданных начертания первого кэша. Не обещают синтез жирного или курсивного рисунка; setter не отправляет Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
style | TextServer.FontStyle | — |
styleМаска TextServer.FontStyle, описывающая начертание.
SetFontStyleNamevoid
public void SetFontStyleName(string name);Имя начертания в метаданных первого кэша, например Regular. Не выбирает автоматически другой файл шрифта и не отправляет Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
name | string | — |
nameИмя в метаданных первого кэша, не путь к файлу.
SetFontWeightvoid
public void SetFontWeight(int weight);Вес в метаданных первого кэша: диапазон 100–999, обычный 400, жирный 700. Advanced backend ограничивает диапазон. Не заменяет нужное начертание и не отправляет Changed.
| Имя | Тип | По умолчанию |
|---|---|---|
weight | int | — |
weightВес 100–999; обычный 400, жирный 700.
SetForceAutohintervoid
public void SetForceAutohinter(bool forceAutohinter);Предпочитает автохинтинг встроенным инструкциям динамического шрифта; по умолчанию false. Не заменяет Hinting и не делает MSDF-шрифт хинтованным. Сравнивайте мелкий текст на целевом масштабе. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
forceAutohinter | bool | — |
forceAutohinterНовое значение ForceAutohinter. Предпочитает автохинтинг встроенным инструкциям динамического шрифта; по умолчанию false. Не заменяет Hinting и не делает MSDF-шрифт хинтованным. Сравнивайте мелкий текст на целевом масштабе.
SetGenerateMipmapsvoid
public void SetGenerateMipmaps(bool generateMipmaps);Генерирует mip-уровни текстур шрифта; по умолчанию false. Может помочь при уменьшении текста, но требует памяти и подходящей фильтрации у потребителя. Само включение не гарантирует более чёткий текст. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
generateMipmaps | bool | — |
generateMipmapsНовое значение GenerateMipmaps. Генерирует mip-уровни текстур шрифта; по умолчанию false. Может помочь при уменьшении текста, но требует памяти и подходящей фильтрации у потребителя. Само включение не гарантирует более чёткий текст.
SetGlyphAdvancevoid
public void SetGlyphAdvance(int cacheIndex, int size, int glyph, Vector2 advance);Задаёт перемещение пера после глифа в кэше без обводки. Это не ширина видимого прямоугольника: пробел может иметь advance без изображения. Создаёт/обновляет запись, но не страницу или контур. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
glyph | int | — |
advance | Vector2 | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
advanceПеремещение пера по осям X/Y в координатах кэша размера, не размер видимого изображения.
SetGlyphOffsetvoid
public void SetGlyphOffset(int cacheIndex, Vector2I size, int glyph, Vector2 offset);Задаёт локальное смещение прямоугольника глифа относительно позиции рисования. Не меняет UV страницы или advance. Для bitmap-атласа согласуйте со всеми остальными полями записи. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
offset | Vector2 | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
offsetСмещение глифа относительно позиции рисования в координатах размера.
SetGlyphSizevoid
public void SetGlyphSize(int cacheIndex, Vector2I size, int glyph, Vector2 glSize);Задаёт размер рисуемого прямоугольника глифа, не размер шрифта и не advance. Само по себе не создаёт изображение. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
glSize | Vector2 | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
glSizeНеотрицательная ширина/высота прямоугольника глифа в координатах размера.
SetGlyphTextureIdxvoid
public void SetGlyphTextureIdx(int cacheIndex, Vector2I size, int glyph, int textureIdx);Задаёт индекс страницы записи глифа, не назначая Image и не проверяя полную согласованность атласа. Нужна существующая правильная страница; -1 обозначает отсутствие текстуры. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
textureIdx | int | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
textureIdxПравильная страница выбранного кэша; -1 без текстуры. Setter не создаёт изображение.
SetGlyphUVRectvoid
public void SetGlyphUVRect(int cacheIndex, Vector2I size, int glyph, Rect2 uVRect);Задаёт прямоугольник в пикселях изображения страницы атласа, не нормализованные UV 0–1. Должен соответствовать странице GlyphTextureIdx и её размерам. Не задаёт размер шрифта. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
glyph | int | — |
uVRect | Rect2 | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
glyphИндекс/ключ глифа выбранного кэша, не позиция в строке. Для динамического шрифта получите через GetGlyphIndex или shaping; не переносите между разными файлами/начертаниями.
uVRectПрямоугольник в пикселях страницы, согласованный с Image и индексом страницы; не UV 0–1.
SetHintingvoid
public void SetHinting(TextServer.Hinting hinting);Подгонка динамического растрового шрифта к пиксельной сетке: None, Light или Normal; по умолчанию Light. Normal может менять метрики по обеим осям, в том числе ширины моноширинных символов. Для MSDF хинтинг не поддерживается. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
hinting | TextServer.Hinting | — |
hintingНовое значение Hinting. Подгонка динамического растрового шрифта к пиксельной сетке: None, Light или Normal; по умолчанию Light. Normal может менять метрики по обеим осям, в том числе ширины моноширинных символов. Для MSDF хинтинг не поддерживается.
SetKeepRoundingRemaindersvoid
public void SetKeepRoundingRemainders(bool keepRoundingRemainders);Сохраняет остатки округления при выравнивании глифов по пикселям, уменьшая накопление ошибки интервалов; по умолчанию true. При субпиксельном позиционировании соответствующее округление горизонтальных advances не применяется. Это не включение кернинга. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
keepRoundingRemainders | bool | — |
keepRoundingRemaindersНовое значение KeepRoundingRemainders. Сохраняет остатки округления при выравнивании глифов по пикселям, уменьшая накопление ошибки интервалов; по умолчанию true. При субпиксельном позиционировании соответствующее округление горизонтальных advances не применяется. Это не включение кернинга.
SetKerningvoid
public void SetKerning(int cacheIndex, int size, Vector2I glyphPair, Vector2 kerning);Задаёт ручную корректировку для упорядоченной пары индексов глифов. Не создаёт глифы и не включает функцию OpenType kern. MSDF/FixedSize влияют на эффективные значения. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | int | — |
glyphPair | Vector2I | — |
kerning | Vector2 | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeПоложительный размер шрифта, не индекс страницы и не байтовый размер файла.
glyphPairVector2I(левый индекс, правый индекс), порядок важен. Это не две Unicode code points для динамического шрифта.
kerningРучная корректировка пары Vector2; согласуйте с размером кэша и направлением текста.
SetLanguageSupportOverridevoid
public void SetLanguageSupportOverride(string language, bool supported);Задаёт явное решение для точного ключа языка и обновляет существующие font RID. «*» задаёт общий результат при отсутствии точного ключа. Не добавляет глифы или shaping; Changed не отправляется. Настраивайте до использования ресурса. Загрузка файла сохраняет эти записи.
| Имя | Тип | По умолчанию |
|---|---|---|
language | string | — |
supported | bool | — |
languageТочный ключ языка, например en или ru, либо «*» для общего решения. Регистр/формат не нормализуются этими методами; используйте согласованные ключи.
supportedЯвное решение true/false. false создаёт запрещающую запись; для возврата к автоматическому выбору удалите запись.
SetModulateColorGlyphsvoid
public void SetModulateColorGlyphs(bool modulate);Применяет RGB-модуляцию также к цветным глифам; по умолчанию false. При false цветные глифы сохраняют собственный RGB, но прозрачность отрисовки учитывается. Настройка не добавляет отсутствующие цветные символы. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
modulate | bool | — |
modulateНовое значение ModulateColorGlyphs. Применяет RGB-модуляцию также к цветным глифам; по умолчанию false. При false цветные глифы сохраняют собственный RGB, но прозрачность отрисовки учитывается. Настройка не добавляет отсутствующие цветные символы.
SetMsdfPixelRangevoid
public void SetMsdfPixelRange(int msdfPixelRange);Диапазон расстояний MSDF вокруг контура. У нового FontFile равен 16, после LoadDynamicFont — 14. Для обводки задавайте как минимум удвоенную максимальную толщину. Работает при включённом MSDF; большее значение само не повышает точность. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
msdfPixelRange | int | — |
msdfPixelRangeНовое значение MsdfPixelRange. Диапазон расстояний MSDF вокруг контура. У нового FontFile равен 16, после LoadDynamicFont — 14. Для обводки задавайте как минимум удвоенную максимальную толщину. Работает при включённом MSDF; большее значение само не повышает точность.
SetMsdfSizevoid
public void SetMsdfSize(int msdfSize);Базовый размер генерации MSDF, не размер текста Control. У нового FontFile равен 48, после LoadDynamicFont — 128. Увеличивайте только при заметной нехватке точности: растут затраты генерации и памяти. Требует включённого MSDF. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
msdfSize | int | — |
msdfSizeНовое значение MsdfSize. Базовый размер генерации MSDF, не размер текста Control. У нового FontFile равен 48, после LoadDynamicFont — 128. Увеличивайте только при заметной нехватке точности: растут затраты генерации и памяти. Требует включённого MSDF.
SetMultichannelSignedDistanceFieldvoid
public void SetMultichannelSignedDistanceField(bool msdf);Использует многоканальное поле расстояний для масштабируемых глифов из векторных данных; по умолчанию false. Настраивайте MsdfSize и MsdfPixelRange после загрузки. Хинтинг недоступен, мелкий текст может выглядеть хуже; пересекающиеся контуры требуют проверки. Это не гарантия бесплатного масштабирования или качества любого файла. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
msdf | bool | — |
msdfНовое значение MultichannelSignedDistanceField. Использует многоканальное поле расстояний для масштабируемых глифов из векторных данных; по умолчанию false. Настраивайте MsdfSize и MsdfPixelRange после загрузки. Хинтинг недоступен, мелкий текст может выглядеть хуже; пересекающиеся контуры требуют проверки. Это не гарантия бесплатного масштабирования или качества любого файла.
SetOpentypeFeatureOverridesvoid
public void SetOpentypeFeatureOverrides(Reckfell.Collections.Dictionary overrides);Общие настройки функций OpenType: ключ-тег, например liga или kern, и целое значение. 0 выключает, положительное значение включает или выбирает вариант; отрицательные значения пропускаются при shaping. Это не оси variable font. Dictionary хранится совместно: для независимого снимка вызовите Duplicate. Setter и правка Dictionary не отправляют Changed; не рассчитывайте на автоматический перерасчёт уже подготовленного текста. Задавайте до использования, проверяйте поддержку функцией GetSupportedFeatureList. Загрузка файла сохраняет настройки.
| Имя | Тип | По умолчанию |
|---|---|---|
overrides | Reckfell.Collections.Dictionary | — |
overridesDictionary тег → целое значение функции. Пустая таблица заменяет прежние настройки; передача не копирует её содержимое.
SetOversamplingvoid
public void SetOversampling(float oversampling);Множитель растеризации динамического шрифта: положительное значение переопределяет настройку viewport, 0 оставляет её. Явный положительный аргумент метода рисования имеет приоритет. MSDF и положительный FixedSize обходят oversampling. Это не масштаб текста; учитывайте память и время генерации. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
oversampling | float | — |
oversamplingНовое значение Oversampling. Множитель растеризации динамического шрифта: положительное значение переопределяет настройку viewport, 0 оставляет её. Явный положительный аргумент метода рисования имеет приоритет. MSDF и положительный FixedSize обходят oversampling. Это не масштаб текста; учитывайте память и время генерации.
SetScriptSupportOverridevoid
public void SetScriptSupportOverride(string script, bool supported);Задаёт решение для точного кода письменности, например Latn или Cyrl; «*» применяется при отсутствии точного ключа. Не меняет форму символов и не добавляет отсутствующие глифы. Обновляет существующие font RID без Changed; загрузка файла сохраняет записи.
| Имя | Тип | По умолчанию |
|---|---|---|
script | string | — |
supported | bool | — |
scriptКод письменности, например Latn или Cyrl, либо «*». Ключ сопоставляется точно; это не имя файла скрипта.
supportedЯвное решение true/false. false создаёт запрещающую запись; для возврата к автоматическому выбору удалите запись.
SetSubpixelPositioningvoid
public void SetSubpixelPositioning(TextServer.SubpixelPositioning subpixelPositioning);Точность горизонтальной позиции глифа: Disabled, Auto, OneHalf или OneQuarter. У нового FontFile — Auto, после LoadDynamicFont — Disabled. Дополнительные позиции могут потребовать больше вариантов глифов в кэше. Не путайте с Lcd-сглаживанием. Изменение отправляет Changed; присваивание того же значения его не отправляет. Загрузка сбрасывает настройку.
| Имя | Тип | По умолчанию |
|---|---|---|
subpixelPositioning | TextServer.SubpixelPositioning | — |
subpixelPositioningНовое значение SubpixelPositioning. Точность горизонтальной позиции глифа: Disabled, Auto, OneHalf или OneQuarter. У нового FontFile — Auto, после LoadDynamicFont — Disabled. Дополнительные позиции могут потребовать больше вариантов глифов в кэше. Не путайте с Lcd-сглаживанием.
SetTextureImagevoid
public void SetTextureImage(int cacheIndex, Vector2I size, int textureIndex, Image image);Назначает непустой Image странице атласа и создаёт её текстуру; больший индекс расширяет таблицу страниц. Image хранится как общий ресурс. Не задаёт прямоугольники/метрики глифов и не отправляет Changed. Настраивайте согласованный кэш до использования.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
textureIndex | int | — |
image | Image | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
textureIndexСуществующий индекс страницы от 0 до GetTextureCount()-1; SetTextureImage/SetTextureOffsets могут расширить таблицу при большем неотрицательном индексе.
imageНепустой ресурс Image с данными страницы; ссылка сохраняется совместно.
SetTextureOffsets2 перегрузки
public void SetTextureOffsets(int cacheIndex, Vector2I size, int textureIndex, int[] offset);Заменяет внутренние данные упаковки полок атласа: группы int по четыре — x, y, ширина, высота. Длина кратна 4. Это не смещение отдельного глифа и не UV-массив. C# копирует вход; перегрузки массива и span равнозначны. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
textureIndex | int | — |
offset | int[] | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
textureIndexСуществующий индекс страницы от 0 до GetTextureCount()-1; SetTextureImage/SetTextureOffsets могут расширить таблицу при большем неотрицательном индексе.
offsetГруппы x, y, ширина, высота полок, длина кратна 4; C# копирует массив/span.
public void SetTextureOffsets(int cacheIndex, Vector2I size, int textureIndex, ReadOnlySpan<int> offset);Заменяет внутренние данные упаковки полок атласа: группы int по четыре — x, y, ширина, высота. Длина кратна 4. Это не смещение отдельного глифа и не UV-массив. C# копирует вход; перегрузки массива и span равнозначны. Changed не отправляется.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
size | Vector2I | — |
textureIndex | int | — |
offset | ReadOnlySpan<int> | — |
cacheIndexНеотрицательный индекс font RID, обычно 0. Обращение к новому индексу может расширить таблицу и создать кэш; промежуточные слоты тоже входят в GetCacheCount. Используйте небольшие контролируемые индексы.
sizeVector2I(положительный размер шрифта, неотрицательная толщина обводки); MSDF/FixedSize могут выбирать другой эффективный кэш.
textureIndexСуществующий индекс страницы от 0 до GetTextureCount()-1; SetTextureImage/SetTextureOffsets могут расширить таблицу при большем неотрицательном индексе.
offsetГруппы x, y, ширина, высота полок, длина кратна 4; C# копирует массив/span.
SetTransformvoid
public void SetTransform(int cacheIndex, Transform2D transform);Задаёт преобразование контуров, например наклон или поворот. Это синтетическое изменение глифов, не перемещение элемента интерфейса; не рассчитывайте на перенос Origin как на позицию текста. Прямое изменение кэша не отправляет Changed; настраивайте до использования ресурса.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
transform | Transform2D | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
transformКонечная матрица контура; Identity без преобразования.
SetVariationCoordinatesvoid
public void SetVariationCoordinates(int cacheIndex, Reckfell.Collections.Dictionary variationCoordinates);Копирует плоскую таблицу ось → число в выбранный кэш; диапазоны/оси берите из GetSupportedVariationList. Предпочитайте числовые теги из TextServer.NameToTag. Это реальные оси variable font, не функции liga/kern. Backend сбрасывает кэш при изменении таблицы. Прямое изменение кэша не отправляет Changed; настраивайте до использования ресурса.
| Имя | Тип | По умолчанию |
|---|---|---|
cacheIndex | int | — |
variationCoordinates | Reckfell.Collections.Dictionary | — |
cacheIndexНеотрицательный индекс font RID, обычно 0; новый индекс может лениво расширить таблицу кэшей.
variationCoordinatesПлоская Dictionary числовой тег оси → конечное число в диапазоне файла. Setter копирует таблицу.