reckfellENGINE

Font

Базовый ресурс шрифта и измерения текста.

На этой странице
class FontReckfellSharpНаследует Resource

Font описывает шрифт и резервные шрифты. Размер текста обычно задаёт Control/Theme; один ресурс можно использовать при разных размерах. Для импортированного файла используйте FontFile, для вариации FontVariation, для установленного в ОС семейства SystemFont.

Число символов C#, Unicode-кодовых точек и отрисованных глифов может различаться. Измеряйте текст с тем же шрифтом, размером и shaping-настройками, с которыми рисуете. Проверяйте нужные языки и экспорт: наличие файла не гарантирует наличие всех глифов.

Рабочий пример.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Свойства1

FallbacksСвойство
# Fallbacks
C#
public Reckfell.Collections.Array<Font> Fallbacks { get; set; }

Резервные шрифты для отсутствующих глифов. Проверьте охват целевых языков, метрики и экспорт ресурсов; список fallback не гарантирует поддержку любого Unicode-текста.

Методы47

DrawChar2 перегрузки
# DrawChar · 1/2
C#
public float DrawChar(Rid canvasItem, Vector2 pos, long @char, int fontSize, Color? modulate);

Нарисуйте один символ Unicode char на элементе холста, используя шрифт, в заданной позиции, с цветом modulate. pos указывает базовую линию, а не верхнюю. Чтобы рисовать сверху, ascent необходимо добавить к оси Y. Если oversampling больше нуля, он используется как фактор передискретизации шрифта, в противном случае используются настройки передискретизации области просмотра. Примечание: Не используйте эту функцию для рисования строк посимвольно, используйте вместо этого Font.DrawString или TextLine.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
charlong—
fontSizeint—
modulateColor?—
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

Возвращает float
# DrawChar · 2/2
C#
public 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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
charlong—
fontSizeint—
modulateColor?default
oversamplingfloat0f
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

Возвращает float
DrawCharOutline2 перегрузки
# DrawCharOutline · 1/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
charlong—
fontSizeint—
sizeint—
modulateColor?—
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

Возвращает float
# DrawCharOutline · 2/2
C#
public 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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
charlong—
fontSizeint—
sizeint-1
modulateColor?default
oversamplingfloat0f
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

Возвращает float
DrawMultilineString2 перегрузки
# DrawMultilineString · 1/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignment—
widthfloat—
fontSizeint—
maxLinesint—
modulateColor?—
brkFlagsTextServer.LineBreakFlag—
justificationFlagsTextServer.JustificationFlag—
directionTextServer.Direction—
orientationTextServer.Orientation—
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

# DrawMultilineString · 2/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignmentHorizontalAlignment.Left
widthfloat-1f
fontSizeint16
maxLinesint-1
modulateColor?default
brkFlagsTextServer.LineBreakFlagTextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound
justificationFlagsTextServer.JustificationFlagTextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound
directionTextServer.DirectionTextServer.Direction.Auto
orientationTextServer.OrientationTextServer.Orientation.Horizontal
oversamplingfloat0f
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

DrawMultilineStringOutline2 перегрузки
# DrawMultilineStringOutline · 1/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignment—
widthfloat—
fontSizeint—
maxLinesint—
sizeint—
modulateColor?—
brkFlagsTextServer.LineBreakFlag—
justificationFlagsTextServer.JustificationFlag—
directionTextServer.Direction—
orientationTextServer.Orientation—
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

# DrawMultilineStringOutline · 2/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignmentHorizontalAlignment.Left
widthfloat-1f
fontSizeint16
maxLinesint-1
sizeint1
modulateColor?default
brkFlagsTextServer.LineBreakFlagTextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound
justificationFlagsTextServer.JustificationFlagTextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound
directionTextServer.DirectionTextServer.Direction.Auto
orientationTextServer.OrientationTextServer.Orientation.Horizontal
oversamplingfloat0f
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

DrawString2 перегрузки
# DrawString · 1/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignment—
widthfloat—
fontSizeint—
modulateColor?—
justificationFlagsTextServer.JustificationFlag—
directionTextServer.Direction—
orientationTextServer.Orientation—
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

# DrawString · 2/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignmentHorizontalAlignment.Left
widthfloat-1f
fontSizeint16
modulateColor?default
justificationFlagsTextServer.JustificationFlagTextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound
directionTextServer.DirectionTextServer.Direction.Auto
orientationTextServer.OrientationTextServer.Orientation.Horizontal
oversamplingfloat0f
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

DrawStringOutline2 перегрузки
# DrawStringOutline · 1/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignment—
widthfloat—
fontSizeint—
sizeint—
modulateColor?—
justificationFlagsTextServer.JustificationFlag—
directionTextServer.Direction—
orientationTextServer.Orientation—
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

# DrawStringOutline · 2/2
C#
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.

Параметры
ИмяТипПо умолчанию
canvasItemRid—
posVector2—
textstring—
alignmentHorizontalAlignmentHorizontalAlignment.Left
widthfloat-1f
fontSizeint16
sizeint1
modulateColor?default
justificationFlagsTextServer.JustificationFlagTextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound
directionTextServer.DirectionTextServer.Direction.Auto
orientationTextServer.OrientationTextServer.Orientation.Horizontal
oversamplingfloat0f
modulate

Если параметр не имеет значения, то значение по умолчанию: new Color(1.0f, 1.0f, 1.0f, 1.0f).

FindVariation5 перегрузок
# FindVariation · 1/5
C#
public Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex, float strength, Transform2D? transform);

Возвращает TextServer RID кэша шрифтов для определенной вариации.

Параметры
ИмяТипПо умолчанию
variationCoordinatesReckfell.Collections.Dictionary—
faceIndexint—
strengthfloat—
transformTransform2D?—
transform

Если параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.

Возвращает Rid
# FindVariation · 2/5
C#
public Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex, float strength, Transform2D? transform, int spacingTop, int spacingBottom, int spacingSpace, int spacingGlyph);

Возвращает TextServer RID кэша шрифтов для определенной вариации.

Параметры
ИмяТипПо умолчанию
variationCoordinatesReckfell.Collections.Dictionary—
faceIndexint—
strengthfloat—
transformTransform2D?—
spacingTopint—
spacingBottomint—
spacingSpaceint—
spacingGlyphint—
transform

Если параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.

Возвращает Rid
# FindVariation · 3/5
C#
public Rid FindVariation(Reckfell.Collections.Dictionary variationCoordinates, int faceIndex, float strength, Transform2D? transform, int spacingTop, int spacingBottom, int spacingSpace, int spacingGlyph, float baselineOffset);

Возвращает TextServer RID кэша шрифтов для определенной вариации.

Параметры
ИмяТипПо умолчанию
variationCoordinatesReckfell.Collections.Dictionary—
faceIndexint—
strengthfloat—
transformTransform2D?—
spacingTopint—
spacingBottomint—
spacingSpaceint—
spacingGlyphint—
baselineOffsetfloat—
transform

Если параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.

Возвращает Rid
# FindVariation · 4/5
C#
public 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 кэша шрифтов для определенной вариации.

Параметры
ИмяТипПо умолчанию
variationCoordinatesReckfell.Collections.Dictionary—
faceIndexint0
strengthfloat0f
transformTransform2D?default
spacingTopint0
spacingBottomint0
spacingSpaceint0
spacingGlyphint0
baselineOffsetfloat0f
paletteIndexlong0
customColorsColor[]null
transform

Если параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.

customColors

Если параметр не имеет значения, то значение по умолчанию: Array.Empty<Color>().

Возвращает Rid
# FindVariation · 5/5
C#
public 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 кэша шрифтов для определенной вариации.

Параметры
ИмяТипПо умолчанию
variationCoordinatesReckfell.Collections.Dictionary—
faceIndexint—
strengthfloat—
transformTransform2D?—
spacingTopint—
spacingBottomint—
spacingSpaceint—
spacingGlyphint—
baselineOffsetfloat—
paletteIndexlong—
customColorsReadOnlySpan<Color>—
transform

Если параметр не имеет значения, то значение по умолчанию: Transform2D.Identity.

Возвращает Rid
GetAscentfloat
# GetAscent
C#
public float GetAscent(int fontSize = 16);

Возвращает максимальное значение подъема шрифта (количество пикселей над базовой линией) для данного шрифта и всех резервных шрифтов. Примечание: Реальный подъем строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте его только в качестве приблизительной оценки (например, как подъем пустой строки).

Параметры
ИмяТипПо умолчанию
fontSizeint16
Возвращает float
GetCharSizeVector2
# GetCharSize
C#
public Vector2 GetCharSize(long @char, int fontSize);

Возвращает размер символа. Не учитывает кернинг. Примечание: Не используйте эту функцию для вычисления ширины строки символ за символом, вместо этого используйте Font.GetStringSize или TextLine. Возвращаемая высота — это высота шрифта (см. также Font.GetHeight) и не имеет отношения к высоте глифа.

Параметры
ИмяТипПо умолчанию
charlong—
fontSizeint—
Возвращает Vector2
GetDescentfloat
# GetDescent
C#
public float GetDescent(int fontSize = 16);

Возвращает максимальное значение наклона шрифта (количество пикселей ниже базовой линии) для данного шрифта и всех резервных шрифтов. Примечание: Реальный наклон строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте его только в качестве приблизительной оценки (например, как наклон пустой строки).

Параметры
ИмяТипПо умолчанию
fontSizeint16
Возвращает float
GetFaceCountlong
# GetFaceCount
C#
public long GetFaceCount();

Возвращает количество шрифтов в коллекции TrueType / OpenType.

Возвращает long
GetFallbacksReckfell.Collections.Array<Font>
# GetFallbacks
C#
public Reckfell.Collections.Array<Font> GetFallbacks();
Возвращает Reckfell.Collections.Array<Font>
GetFontNamestring
# GetFontName
C#
public string GetFontName();

Возвращает имя семейства шрифтов.

Возвращает string
GetFontStretchint
# GetFontStretch
C#
public int GetFontStretch();

Возвращает величину растяжения шрифта по сравнению с нормальной шириной. Процентное значение между 50% и 200%.

Возвращает int
GetFontStyleTextServer.FontStyle
# GetFontStyle
C#
public TextServer.FontStyle GetFontStyle();

Возвращает флаги стиля шрифта.

Возвращает TextServer.FontStyle
GetFontStyleNamestring
# GetFontStyleName
C#
public string GetFontStyleName();

Возвращает имя стиля шрифта.

Возвращает string
GetFontWeightint
# GetFontWeight
C#
public int GetFontWeight();

Возвращает жирность (начертание) шрифта. Значение в диапазоне 100...999, нормальный шрифт — 400, жирный шрифт — 700.

Возвращает int
GetHeightfloat
# GetHeight
C#
public float GetHeight(int fontSize = 16);

Возвращает общую среднюю высоту шрифта (подъем плюс спуск) в пикселях. Примечание: Реальная высота строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте ее только как грубую оценку (например, как высоту пустой строки).

Параметры
ИмяТипПо умолчанию
fontSizeint16
Возвращает float
GetMultilineStringSizeVector2
# GetMultilineStringSize
C#
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.

Параметры
ИмяТипПо умолчанию
textstring—
alignmentHorizontalAlignmentHorizontalAlignment.Left
widthfloat-1f
fontSizeint16
maxLinesint-1
brkFlagsTextServer.LineBreakFlagTextServer.LineBreakFlag.Mandatory | TextServer.LineBreakFlag.WordBound
justificationFlagsTextServer.JustificationFlagTextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound
directionTextServer.DirectionTextServer.Direction.Auto
orientationTextServer.OrientationTextServer.Orientation.Horizontal
Возвращает Vector2
GetOpentypeFeaturesReckfell.Collections.Dictionary
# GetOpentypeFeatures
C#
public Reckfell.Collections.Dictionary GetOpentypeFeatures();

Возвращает набор тегов функций OpenType. Дополнительная информация: Теги функций OpenType.

Возвращает Reckfell.Collections.Dictionary
GetOtNameStringsReckfell.Collections.Dictionary
# GetOtNameStrings
C#
public Reckfell.Collections.Dictionary GetOtNameStrings();

Возвращает Reckfell.Collections.Dictionary со строками названий шрифтов OpenType (локализованные названия шрифтов, версия, описание, информация о лицензии, пример текста и т. д.).

Возвращает Reckfell.Collections.Dictionary
GetPaletteColorsColor[]
# GetPaletteColors
C#
public Color[] GetPaletteColors(long index);

Возвращает массив в предопределенной цветовой палитре по адресу index. Палитра содержит все цвета, используемые для отображения глифов шрифта. Каждая палитра содержит одинаковое количество цветов. Цвета можно переопределить с помощью FontVariation.

Параметры
ИмяТипПо умолчанию
indexlong—
Возвращает Color[]
GetPaletteCountlong
# GetPaletteCount
C#
public long GetPaletteCount();

Возвращает количество предопределенных цветовых палитр. Палитра содержит все цвета, используемые для отображения глифов шрифта. Каждая палитра содержит одинаковое количество цветов.

Возвращает long
GetPaletteNamestring
# GetPaletteName
C#
public string GetPaletteName(long index);

Возвращает название предопределенной цветовой палитры по адресу index. Палитра содержит все цвета, используемые для отображения глифов шрифта. Каждая палитра содержит одинаковое количество цветов.

Параметры
ИмяТипПо умолчанию
indexlong—
Возвращает string
GetRidsReckfell.Collections.Array<Rid>
# GetRids
C#
public Reckfell.Collections.Array<Rid> GetRids();

Возвращает Reckfell.Collections.Array допустимых Font Rid, которые можно передать методам TextServer.

Возвращает Reckfell.Collections.Array<Rid>
GetSpacingint
# GetSpacing
C#
public int GetSpacing(TextServer.SpacingType spacing);

Возвращает величину интервала для заданного типа spacing.

Параметры
ИмяТипПо умолчанию
spacingTextServer.SpacingType—
Возвращает int
GetStringSizeVector2
# GetStringSize
C#
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), используйте:

C#
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.

Параметры
ИмяТипПо умолчанию
textstring—
alignmentHorizontalAlignmentHorizontalAlignment.Left
widthfloat-1f
fontSizeint16
justificationFlagsTextServer.JustificationFlagTextServer.JustificationFlag.Kashida | TextServer.JustificationFlag.WordBound
directionTextServer.DirectionTextServer.Direction.Auto
orientationTextServer.OrientationTextServer.Orientation.Horizontal
Возвращает Vector2
GetSupportedCharsstring
# GetSupportedChars
C#
public string GetSupportedChars();

Возвращает строку, содержащую все символы, доступные в шрифте. Если заданный символ включен в более чем один источник данных шрифта, он появляется только один раз в возвращаемой строке.

Возвращает string
GetSupportedFeatureListReckfell.Collections.Dictionary
# GetSupportedFeatureList
C#
public Reckfell.Collections.Dictionary GetSupportedFeatureList();

Возвращает список функций OpenType, поддерживаемых шрифтом.

Возвращает Reckfell.Collections.Dictionary
GetSupportedVariationListReckfell.Collections.Dictionary
# GetSupportedVariationList
C#
public Reckfell.Collections.Dictionary GetSupportedVariationList();

Список лиц, которым оказана поддержка координаты изменения, каждая координата возвращается как tag: Vector3i(min_value,max_value,default_value). Font Вариации позволяют постоянно менять характеристики глифа вдоль некоторых конкретных конструктивных осей, таких, как вес, ширина или наклонение. Для печати имеющихся вариационных осей переменного шрифта:

Примечание: Чтобы задать и получить координаты вариации FontVariation, используйте FontVariation.VariationOpentype.

Возвращает Reckfell.Collections.Dictionary
GetUnderlinePositionfloat
# GetUnderlinePosition
C#
public float GetUnderlinePosition(int fontSize = 16);

Возвращает среднее смещение подчеркивания в пикселях ниже базовой линии. Примечание: Реальное положение подчеркивания строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте его только как грубую оценку.

Параметры
ИмяТипПо умолчанию
fontSizeint16
Возвращает float
GetUnderlineThicknessfloat
# GetUnderlineThickness
C#
public float GetUnderlineThickness(int fontSize = 16);

Возвращает среднюю толщину подчеркивания. Примечание: Реальная толщина подчеркивания строки зависит от контекста и может значительно отличаться от значения, возвращаемого этой функцией. Используйте ее только как грубую оценку.

Параметры
ИмяТипПо умолчанию
fontSizeint16
Возвращает float
HasCharbool
# HasChar
C#
public bool HasChar(long @char);

Возвращает true, если в шрифте доступен символ Unicode char.

Параметры
ИмяТипПо умолчанию
charlong—
Возвращает bool
IsLanguageSupportedbool
# IsLanguageSupported
C#
public bool IsLanguageSupported(string language);

Возвращает true, если шрифт поддерживает указанный язык (в виде кода ISO 639).

Параметры
ИмяТипПо умолчанию
languagestring—
Возвращает bool
IsScriptSupportedbool
# IsScriptSupported
C#
public bool IsScriptSupported(string script);

Возвращает true, если шрифт поддерживает указанный шрифт (в виде кода ISO 15924).

Параметры
ИмяТипПо умолчанию
scriptstring—
Возвращает bool
SetCacheCapacityvoid
# SetCacheCapacity
C#
public void SetCacheCapacity(int singleLine, int multiLine);

Устанавливает емкость кэша LRU для методов draw_*.

Параметры
ИмяТипПо умолчанию
singleLineint—
multiLineint—
SetFallbacksvoid
# SetFallbacks
C#
public void SetFallbacks(Reckfell.Collections.Array<Font> fallbacks);
Параметры
ИмяТипПо умолчанию
fallbacksReckfell.Collections.Array<Font>—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.