Font
Базовый ресурс шрифта и измерения текста.
Font описывает шрифт и резервные шрифты. Размер текста обычно задаёт Control/Theme; один ресурс можно использовать при разных размерах. Для импортированного файла используйте FontFile, для вариации FontVariation, для установленного в ОС семейства SystemFont.
Число символов C#, Unicode-кодовых точек и отрисованных глифов может различаться. Измеряйте текст с тем же шрифтом, размером и shaping-настройками, с которыми рисуете. Проверяйте нужные языки и экспорт: наличие файла не гарантирует наличие всех глифов.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Свойства1
FallbacksСвойство
public Reckfell.Collections.Array<Font> Fallbacks { get; set; }Резервные шрифты для отсутствующих глифов. Проверьте охват целевых языков, метрики и экспорт ресурсов; список fallback не гарантирует поддержку любого Unicode-текста.
Методы47
DrawChar2 перегрузки
public float DrawChar(Rid canvasItem, Vector2 pos, long @char, int fontSize, Color? modulate);Нарисуйте один символ Unicode char на элементе холста, используя шрифт, в заданной позиции, с цветом modulate. pos указывает базовую линию, а не верхнюю. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
Примечание: Не используйте эту функцию для рисования строк посимвольно, используйте вместо этого Font.DrawString или TextLine.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
char | long | — |
fontSize | int | — |
modulate | Color? | — |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
floatpublic float DrawChar(Rid canvasItem, Vector2 pos, long @char, int fontSize, Color? modulate = default, float oversampling = 0f);Нарисуйте один символ Unicode char на элементе холста, используя шрифт, в заданной позиции, с цветом modulate. pos указывает базовую линию, а не верхнюю. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
Примечание: Не используйте эту функцию для рисования строк посимвольно, используйте вместо этого Font.DrawString или TextLine.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
char | long | — |
fontSize | int | — |
modulate | Color? | default |
oversampling | float | 0f |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
floatDrawCharOutline2 перегрузки
public float DrawCharOutline(Rid canvasItem, Vector2 pos, long @char, int fontSize, int size, Color? modulate);Нарисуйте контур одного символа Unicode char в элементе холста, используя шрифт, в заданной позиции, с цветом modulate и размером контура size. pos указывает базовую линию, а не верхнюю. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
Примечание: Не используйте эту функцию для рисования строк посимвольно, вместо этого используйте Font.DrawString или TextLine.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
char | long | — |
fontSize | int | — |
size | int | — |
modulate | Color? | — |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
floatpublic float DrawCharOutline(Rid canvasItem, Vector2 pos, long @char, int fontSize, int size = -1, Color? modulate = default, float oversampling = 0f);Нарисуйте контур одного символа Unicode char в элементе холста, используя шрифт, в заданной позиции, с цветом modulate и размером контура size. pos указывает базовую линию, а не верхнюю. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
Примечание: Не используйте эту функцию для рисования строк посимвольно, вместо этого используйте Font.DrawString или TextLine.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
char | long | — |
fontSize | int | — |
size | int | -1 |
modulate | Color? | default |
oversampling | float | 0f |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
floatDrawMultilineString2 перегрузки
public void DrawMultilineString(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment, float width, int fontSize, int maxLines, Color? modulate, TextServer.LineBreakFlag brkFlags, TextServer.JustificationFlag justificationFlags, TextServer.Direction direction, TextServer.Orientation orientation);Разбивает text на строки, используя правила, заданные brk_flags, и рисует его в элементе холста, используя шрифт, в заданной позиции, с цветом modulate, опционально обрезая ширину и выравнивая по горизонтали. pos указывает базовую линию первой строки, а не верхнюю. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawMultilineString.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | — |
width | float | — |
fontSize | int | — |
maxLines | int | — |
modulate | Color? | — |
brkFlags | TextServer.LineBreakFlag | — |
justificationFlags | TextServer.JustificationFlag | — |
direction | TextServer.Direction | — |
orientation | TextServer.Orientation | — |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
public void DrawMultilineString(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment = HorizontalAlignment.Left, float width = -1f, int fontSize = 16, int maxLines = -1, Color? modulate = default, TextServer.LineBreakFlag brkFlags = TextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound, TextServer.JustificationFlag justificationFlags = TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound, TextServer.Direction direction = TextServer.Direction.Auto, TextServer.Orientation orientation = TextServer.Orientation.Horizontal, float oversampling = 0f);Разбивает text на строки, используя правила, заданные brk_flags, и рисует его в элементе холста, используя шрифт, в заданной позиции, с цветом modulate, опционально обрезая ширину и выравнивая по горизонтали. pos указывает базовую линию первой строки, а не верхнюю. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawMultilineString.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | HorizontalAlignment.Left |
width | float | -1f |
fontSize | int | 16 |
maxLines | int | -1 |
modulate | Color? | default |
brkFlags | TextServer.LineBreakFlag | TextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound |
justificationFlags | TextServer.JustificationFlag | TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound |
direction | TextServer.Direction | TextServer.Direction.Auto |
orientation | TextServer.Orientation | TextServer.Orientation.Horizontal |
oversampling | float | 0f |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
DrawMultilineStringOutline2 перегрузки
public void DrawMultilineStringOutline(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment, float width, int fontSize, int maxLines, int size, Color? modulate, TextServer.LineBreakFlag brkFlags, TextServer.JustificationFlag justificationFlags, TextServer.Direction direction, TextServer.Orientation orientation);Разбивает text на строки, используя правила, заданные brk_flags, и рисует контур текста в элементе холста, используя шрифт, в заданной позиции, с цветом modulate и размером контура size, опционально обрезая ширину и выравнивая по горизонтали. pos указывает базовую линию первой строки, а не верх. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawMultilineStringOutline.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | — |
width | float | — |
fontSize | int | — |
maxLines | int | — |
size | int | — |
modulate | Color? | — |
brkFlags | TextServer.LineBreakFlag | — |
justificationFlags | TextServer.JustificationFlag | — |
direction | TextServer.Direction | — |
orientation | TextServer.Orientation | — |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
public void DrawMultilineStringOutline(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment = HorizontalAlignment.Left, float width = -1f, int fontSize = 16, int maxLines = -1, int size = 1, Color? modulate = default, TextServer.LineBreakFlag brkFlags = TextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound, TextServer.JustificationFlag justificationFlags = TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound, TextServer.Direction direction = TextServer.Direction.Auto, TextServer.Orientation orientation = TextServer.Orientation.Horizontal, float oversampling = 0f);Разбивает text на строки, используя правила, заданные brk_flags, и рисует контур текста в элементе холста, используя шрифт, в заданной позиции, с цветом modulate и размером контура size, опционально обрезая ширину и выравнивая по горизонтали. pos указывает базовую линию первой строки, а не верх. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawMultilineStringOutline.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | HorizontalAlignment.Left |
width | float | -1f |
fontSize | int | 16 |
maxLines | int | -1 |
size | int | 1 |
modulate | Color? | default |
brkFlags | TextServer.LineBreakFlag | TextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound |
justificationFlags | TextServer.JustificationFlag | TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound |
direction | TextServer.Direction | TextServer.Direction.Auto |
orientation | TextServer.Orientation | TextServer.Orientation.Horizontal |
oversampling | float | 0f |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
DrawString2 перегрузки
public void DrawString(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment, float width, int fontSize, Color? modulate, TextServer.JustificationFlag justificationFlags, TextServer.Direction direction, TextServer.Orientation orientation);Нарисуйте text на элементе холста, используя шрифт, в заданной позиции, с modulate цветом, опционально обрезав ширину и выровняв по горизонтали. pos указывает базовую линию, а не верх. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawString.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | — |
width | float | — |
fontSize | int | — |
modulate | Color? | — |
justificationFlags | TextServer.JustificationFlag | — |
direction | TextServer.Direction | — |
orientation | TextServer.Orientation | — |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
public void DrawString(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment = HorizontalAlignment.Left, float width = -1f, int fontSize = 16, Color? modulate = default, TextServer.JustificationFlag justificationFlags = TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound, TextServer.Direction direction = TextServer.Direction.Auto, TextServer.Orientation orientation = TextServer.Orientation.Horizontal, float oversampling = 0f);Нарисуйте text на элементе холста, используя шрифт, в заданной позиции, с modulate цветом, опционально обрезав ширину и выровняв по горизонтали. pos указывает базовую линию, а не верх. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawString.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | HorizontalAlignment.Left |
width | float | -1f |
fontSize | int | 16 |
modulate | Color? | default |
justificationFlags | TextServer.JustificationFlag | TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound |
direction | TextServer.Direction | TextServer.Direction.Auto |
orientation | TextServer.Orientation | TextServer.Orientation.Horizontal |
oversampling | float | 0f |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
DrawStringOutline2 перегрузки
public void DrawStringOutline(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment, float width, int fontSize, int size, Color? modulate, TextServer.JustificationFlag justificationFlags, TextServer.Direction direction, TextServer.Orientation orientation);Нарисовать text контур в элементе холста, используя шрифт, в заданной позиции, с modulate цветом и size размером контура, опционально обрезая ширину и выравнивая по горизонтали. pos указывает базовую линию, а не верх. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawStringOutline.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | — |
width | float | — |
fontSize | int | — |
size | int | — |
modulate | Color? | — |
justificationFlags | TextServer.JustificationFlag | — |
direction | TextServer.Direction | — |
orientation | TextServer.Orientation | — |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
public void DrawStringOutline(Rid canvasItem, Vector2 pos, string text, HorizontalAlignment alignment = HorizontalAlignment.Left, float width = -1f, int fontSize = 16, int size = 1, Color? modulate = default, TextServer.JustificationFlag justificationFlags = TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound, TextServer.Direction direction = TextServer.Direction.Auto, TextServer.Orientation orientation = TextServer.Orientation.Horizontal, float oversampling = 0f);Нарисовать text контур в элементе холста, используя шрифт, в заданной позиции, с modulate цветом и size размером контура, опционально обрезая ширину и выравнивая по горизонтали. pos указывает базовую линию, а не верх. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра.
См. также CanvasItem.DrawStringOutline.
| Имя | Тип | По умолчанию |
|---|---|---|
canvasItem | Rid | — |
pos | Vector2 | — |
text | string | — |
alignment | HorizontalAlignment | HorizontalAlignment.Left |
width | float | -1f |
fontSize | int | 16 |
size | int | 1 |
modulate | Color? | default |
justificationFlags | TextServer.JustificationFlag | TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound |
direction | TextServer.Direction | TextServer.Direction.Auto |
orientation | TextServer.Orientation | TextServer.Orientation.Horizontal |
oversampling | float | 0f |
modulateЕсли параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).
FindVariation5 перегрузок
public Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex, float strength, Transform2D? transform);Возвращает TextServer RID кэша шрифтов для определенной вариации.
| Имя | Тип | По умолчанию |
|---|---|---|
variationCoordinates | Reckfell.Collections.Dictionary | — |
faceIndex | int | — |
strength | float | — |
transform | Transform2D? | — |
transformЕсли параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.
Ridpublic Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex, float strength, Transform2D? transform, int spacingTop, int spacingBottom, int spacingSpace, int spacingGlyph);Возвращает TextServer RID кэша шрифтов для определенной вариации.
| Имя | Тип | По умолчанию |
|---|---|---|
variationCoordinates | Reckfell.Collections.Dictionary | — |
faceIndex | int | — |
strength | float | — |
transform | Transform2D? | — |
spacingTop | int | — |
spacingBottom | int | — |
spacingSpace | int | — |
spacingGlyph | int | — |
transformЕсли параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.
Ridpublic Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex, float strength, Transform2D? transform, int spacingTop, int spacingBottom, int spacingSpace, int spacingGlyph, float baselineOffset);Возвращает TextServer RID кэша шрифтов для определенной вариации.
| Имя | Тип | По умолчанию |
|---|---|---|
variationCoordinates | Reckfell.Collections.Dictionary | — |
faceIndex | int | — |
strength | float | — |
transform | Transform2D? | — |
spacingTop | int | — |
spacingBottom | int | — |
spacingSpace | int | — |
spacingGlyph | int | — |
baselineOffset | float | — |
transformЕсли параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.
Ridpublic Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex = 0, float strength = 0f, Transform2D? transform = default, int spacingTop = 0, int spacingBottom = 0, int spacingSpace = 0, int spacingGlyph = 0, float baselineOffset = 0f, long paletteIndex = 0, Color[] customColors = null);Возвращает TextServer RID кэша шрифтов для определенной вариации.
| Имя | Тип | По умолчанию |
|---|---|---|
variationCoordinates | Reckfell.Collections.Dictionary | — |
faceIndex | int | 0 |
strength | float | 0f |
transform | Transform2D? | default |
spacingTop | int | 0 |
spacingBottom | int | 0 |
spacingSpace | int | 0 |
spacingGlyph | int | 0 |
baselineOffset | float | 0f |
paletteIndex | long | 0 |
customColors | Color[] | null |
transformЕсли параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.
customColorsЕсли параметр не имеет значения, то значение по умолчанию: Array.Empty<Color>().
Ridpublic Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex, float strength, Transform2D? transform, int spacingTop, int spacingBottom, int spacingSpace, int spacingGlyph, float baselineOffset, long paletteIndex, ReadOnlySpan<Color> customColors);Возвращает TextServer RID кэша шрифтов для определенной вариации.
| Имя | Тип | По умолчанию |
|---|---|---|
variationCoordinates | Reckfell.Collections.Dictionary | — |
faceIndex | int | — |
strength | float | — |
transform | Transform2D? | — |
spacingTop | int | — |
spacingBottom | int | — |
spacingSpace | int | — |
spacingGlyph | int | — |
baselineOffset | float | — |
paletteIndex | long | — |
customColors | ReadOnlySpan<Color> | — |
transformЕсли параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.
RidGetAscentfloat
public float GetAscent(int fontSize = 16);Возвращает максимальное значение подъема шрифта (количество пикселей над базовой линией) для данного шрифта и всех резервных шрифтов. Примечание: Реальный подъем строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте его только в качестве приблизительной оценки (например, как подъем пустой строки).
| Имя | Тип | По умолчанию |
|---|---|---|
fontSize | int | 16 |
floatGetCharSizeVector2
public Vector2 GetCharSize(long @char, int fontSize);Возвращает размер символа. Не учитывает кернинг.
Примечание: Не используйте эту функцию для вычисления ширины строки символ за символом, вместо этого используйте Font.GetStringSize или TextLine. Возвращаемая высота — это высота шрифта (см. также Font.GetHeight) и не имеет отношения к высоте глифа.
| Имя | Тип | По умолчанию |
|---|---|---|
char | long | — |
fontSize | int | — |
Vector2GetDescentfloat
public float GetDescent(int fontSize = 16);Возвращает максимальное значение наклона шрифта (количество пикселей ниже базовой линии) для данного шрифта и всех резервных шрифтов. Примечание: Реальный наклон строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте его только в качестве приблизительной оценки (например, как наклон пустой строки).
| Имя | Тип | По умолчанию |
|---|---|---|
fontSize | int | 16 |
floatGetFaceCountlong
public long GetFaceCount();Возвращает количество шрифтов в коллекции TrueType / OpenType.
longGetFallbacksReckfell.Collections.Array<Font>
public Reckfell.Collections.Array<Font> GetFallbacks();Reckfell.Collections.Array<Font>GetFontNamestring
public string GetFontName();Возвращает имя семейства шрифтов.
stringGetFontStretchint
public int GetFontStretch();Возвращает величину растяжения шрифта по сравнению с нормальной шириной. Процентное значение между 50% и 200%.
intGetFontStyleTextServer.FontStyle
public TextServer.FontStyle GetFontStyle();Возвращает флаги стиля шрифта.
TextServer.FontStyleGetFontStyleNamestring
public string GetFontStyleName();Возвращает имя стиля шрифта.
stringGetFontWeightint
public int GetFontWeight();Возвращает жирность (начертание) шрифта. Значение в диапазоне 100...999, нормальный шрифт — 400, жирный шрифт — 700.
intGetHeightfloat
public float GetHeight(int fontSize = 16);Возвращает общую среднюю высоту шрифта (подъем плюс спуск) в пикселях. Примечание: Реальная высота строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте ее только как грубую оценку (например, как высоту пустой строки).
| Имя | Тип | По умолчанию |
|---|---|---|
fontSize | int | 16 |
floatGetMultilineStringSizeVector2
public Vector2 GetMultilineStringSize(string text, HorizontalAlignment alignment = HorizontalAlignment.Left, float width = -1f, int fontSize = 16, int maxLines = -1, TextServer.LineBreakFlag brkFlags = TextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound, TextServer.JustificationFlag justificationFlags = TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound, TextServer.Direction direction = TextServer.Direction.Auto, TextServer.Orientation orientation = TextServer.Orientation.Horizontal);Возвращает размер связывающей коробки строк, разорванных на линии, принимая во внимание кернинг и прогресс.
См. также Font.DrawMultilineString.
| Имя | Тип | По умолчанию |
|---|---|---|
text | string | — |
alignment | HorizontalAlignment | HorizontalAlignment.Left |
width | float | -1f |
fontSize | int | 16 |
maxLines | int | -1 |
brkFlags | TextServer.LineBreakFlag | TextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound |
justificationFlags | TextServer.JustificationFlag | TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound |
direction | TextServer.Direction | TextServer.Direction.Auto |
orientation | TextServer.Orientation | TextServer.Orientation.Horizontal |
Vector2GetOpentypeFeaturesReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary GetOpentypeFeatures();Возвращает набор тегов функций OpenType. Дополнительная информация: Теги функций OpenType.
Reckfell.Collections.DictionaryGetOtNameStringsReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary GetOtNameStrings();Возвращает Reckfell.Collections.Dictionary со строками названий шрифтов OpenType (локализованные названия шрифтов, версия, описание, информация о лицензии, пример текста и т. д.).
Reckfell.Collections.DictionaryGetPaletteColorsColor[]
public Color[] GetPaletteColors(long index);Возвращает массив в предопределенной цветовой палитре по адресу index. Палитра содержит все цвета, используемые для отображения глифов шрифта. Каждая палитра содержит одинаковое количество цветов. Цвета можно переопределить с помощью FontVariation.
| Имя | Тип | По умолчанию |
|---|---|---|
index | long | — |
Color[]GetPaletteCountlong
public long GetPaletteCount();Возвращает количество предопределенных цветовых палитр. Палитра содержит все цвета, используемые для отображения глифов шрифта. Каждая палитра содержит одинаковое количество цветов.
longGetPaletteNamestring
public string GetPaletteName(long index);Возвращает название предопределенной цветовой палитры по адресу index. Палитра содержит все цвета, используемые для отображения глифов шрифта. Каждая палитра содержит одинаковое количество цветов.
| Имя | Тип | По умолчанию |
|---|---|---|
index | long | — |
stringGetRidsReckfell.Collections.Array<Rid>
public Reckfell.Collections.Array<Rid> GetRids();Возвращает Reckfell.Collections.Array допустимых Font Rid, которые можно передать методам TextServer.
Reckfell.Collections.Array<Rid>GetSpacingint
public int GetSpacing(TextServer.SpacingType spacing);Возвращает величину интервала для заданного типа spacing.
| Имя | Тип | По умолчанию |
|---|---|---|
spacing | TextServer.SpacingType | — |
intGetStringSizeVector2
public Vector2 GetStringSize(string text, HorizontalAlignment alignment = HorizontalAlignment.Left, float width = -1f, int fontSize = 16, TextServer.JustificationFlag justificationFlags = TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound, TextServer.Direction direction = TextServer.Direction.Auto, TextServer.Orientation orientation = TextServer.Orientation.Horizontal);Возвращает размер ограничивающего прямоугольника однострочной строки с учетом кернинга, продвижения и субпиксельного позиционирования. См. также Font.GetMultilineStringSize и Font.DrawString.
Например, чтобы получить размер строки, отображаемый однострочной меткой (Label), используйте:
Label label = GetEntity<Label>("Label");
Vector2 stringSize = label.GetThemeFont("font").GetStringSize(label.Text, HorizontalAlignment.Left, -1, label.GetThemeFontSize("font_size"));Примечание: Поскольку кернинг, продвижение и субпиксельное позиционирование учитываются Font.GetStringSize, использование отдельных вызовов Font.GetStringSize для подстрок строки, а затем сложение результатов вернет другой результат по сравнению с использованием одного вызова Font.GetStringSize для всей строки.
Примечание: Реальная высота строки зависит от контекста и может значительно отличаться от значения, возвращаемого Font.GetHeight.
| Имя | Тип | По умолчанию |
|---|---|---|
text | string | — |
alignment | HorizontalAlignment | HorizontalAlignment.Left |
width | float | -1f |
fontSize | int | 16 |
justificationFlags | TextServer.JustificationFlag | TextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound |
direction | TextServer.Direction | TextServer.Direction.Auto |
orientation | TextServer.Orientation | TextServer.Orientation.Horizontal |
Vector2GetSupportedCharsstring
public string GetSupportedChars();Возвращает строку, содержащую все символы, доступные в шрифте. Если заданный символ включен в более чем один источник данных шрифта, он появляется только один раз в возвращаемой строке.
stringGetSupportedFeatureListReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary GetSupportedFeatureList();Возвращает список функций OpenType, поддерживаемых шрифтом.
Reckfell.Collections.DictionaryGetSupportedVariationListReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary GetSupportedVariationList();Список лиц, которым оказана поддержка координаты изменения, каждая координата возвращается как tag: Vector3i(min_value,max_value,default_value).
Font Вариации позволяют постоянно менять характеристики глифа вдоль некоторых конкретных конструктивных осей, таких, как вес, ширина или наклонение.
Для печати имеющихся вариационных осей переменного шрифта:
Примечание: Чтобы задать и получить координаты вариации FontVariation, используйте FontVariation.VariationOpentype.
Reckfell.Collections.DictionaryGetUnderlinePositionfloat
public float GetUnderlinePosition(int fontSize = 16);Возвращает среднее смещение подчеркивания в пикселях ниже базовой линии. Примечание: Реальное положение подчеркивания строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте его только как грубую оценку.
| Имя | Тип | По умолчанию |
|---|---|---|
fontSize | int | 16 |
floatGetUnderlineThicknessfloat
public float GetUnderlineThickness(int fontSize = 16);Возвращает среднюю толщину подчеркивания. Примечание: Реальная толщина подчеркивания строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте ее только как грубую оценку.
| Имя | Тип | По умолчанию |
|---|---|---|
fontSize | int | 16 |
floatHasCharbool
public bool HasChar(long @char);Возвращает true, если в шрифте доступен символ Unicode char.
| Имя | Тип | По умолчанию |
|---|---|---|
char | long | — |
boolIsLanguageSupportedbool
public bool IsLanguageSupported(string language);Возвращает true, если шрифт поддерживает указанный язык (в виде кода ISO 639).
| Имя | Тип | По умолчанию |
|---|---|---|
language | string | — |
boolIsScriptSupportedbool
public bool IsScriptSupported(string script);Возвращает true, если шрифт поддерживает указанный шрифт (в виде кода ISO 15924).
| Имя | Тип | По умолчанию |
|---|---|---|
script | string | — |
boolSetCacheCapacityvoid
public void SetCacheCapacity(int singleLine, int multiLine);Устанавливает емкость кэша LRU для методов draw_*.
| Имя | Тип | По умолчанию |
|---|---|---|
singleLine | int | — |
multiLine | int | — |
SetFallbacksvoid
public void SetFallbacks(Reckfell.Collections.Array<Font> fallbacks);| Имя | Тип | По умолчанию |
|---|---|---|
fallbacks | Reckfell.Collections.Array<Font> | — |