FontVariation

Успадковує: Font < Resource < RefCounted < Object

Варіант шрифту з додатковими налаштуваннями.

Опис

Забезпечує варіації OpenType, симуляцію напівжирного/похилого шрифту та додаткові параметри шрифту, як-от функції OpenType та додаткові інтервали.

Щоб використати імітований варіант жирного шрифту:

var fv = FontVariation.new()
fv.base_font = load("res://BarlowCondensed-Regular.ttf")
fv.variation_embolden = 1,2
$Label.add_theme_font_override("шрифт", fv)
$Label.add_theme_font_size_override("font_size", 64)

Щоб встановити координати кількох варіаційних осей:

var fv = FontVariation.new();
var ts = TextServerManager.get_primary_interface()
fv.base_font = load("res://BarlowCondensed-Regular.ttf")
fv.variation_opentype = { ts.name_to_tag("wght"): 900, ts.name_to_tag("custom_hght"): 900 }

Властивості

Font

base_font

float

baseline_offset

0.0

Dictionary

opentype_features

{}

int

spacing_bottom

0

int

spacing_glyph

0

int

spacing_space

0

int

spacing_top

0

float

variation_embolden

0.0

int

variation_face_index

0

Dictionary

variation_opentype

{}

Transform2D

variation_transform

Transform2D(1, 0, 0, 1, 0, 0)

Методи

void

set_spacing(spacing: SpacingType, value: int)


Описи властивостей

Font base_font 🔗

  • void set_base_font(value: Font)

  • Font get_base_font()

Базовий шрифт, який використовується для створення варіації. Якщо не встановлено, використовується шрифт за замовчуванням Theme.


float baseline_offset = 0.0 🔗

  • void set_baseline_offset(value: float)

  • float get_baseline_offset()

Додатковий базовий зсув (як дроб висоти шрифту).


Dictionary opentype_features = {} 🔗

Набір міток функції OpenType. Детальніше: ` мітки OpenType <https://docs.microsoft.com/en-us/typography/opentype/spec/featuretags>`__.


int spacing_bottom = 0 🔗

Додатково просипаючи внизу лінії в пікселях.


int spacing_glyph = 0 🔗

Додаткове обмотування графічних гліфів.


int spacing_space = 0 🔗

Додаткова ширина простору гліфів.


int spacing_top = 0 🔗

Додаткове розсипання у верхній частині лінії у пікселях.


float variation_embolden = 0.0 🔗

  • void set_variation_embolden(value: float)

  • float get_variation_embolden()

Якщо не дорівнює нулю, змішайте шрифтові контури. Негативні значення зменшують товщину контуру.

Примітка: Вбудовані шрифти можуть мати самоінтерсекційні контури, які дозволять запобігти шрифтам MSDF і TextMesh від роботи правильно.


int variation_face_index = 0 🔗

  • void set_variation_face_index(value: int)

  • int get_variation_face_index()

Індекс активного обличчя в файлі TrueType / OpenType.


Dictionary variation_opentype = {} 🔗

Координація варіаційних кодів Font OpenType. Більш детальна інформація: [url=https://docs.microsoft.com/en-us/typography/opentype/spec/dvaraxisreg]{/url]

[b]Примітка:[/b] Ця [Дикаційна] використовує теги OpenType як ключі. Сортування осей можна визначити як за тегами ([int], наприклад [code]0x77678674[/code]) і імен ([String], наприклад [code]wght[/code]). Деякі осі можуть бути доступні кількома іменами. Наприклад, [code]wght[/code] відноситься до тієї ж осі, як [code] вага[/code]. Теги на іншому руці унікальний. Щоб конвертувати між іменами та тегами, скористайтеся [method TextServer.name_to_tag] та [method посібник.tag_to_name].

[b]Примітка:[/b] Щоб отримати доступні варіації осей шрифту, скористайтеся [method Font.get_supported_variation_list].


Transform2D variation_transform = Transform2D(1, 0, 0, 1, 0, 0) 🔗

2D трансформатор, наноситься на шрифтові контури, можна використовувати для сланцевих, фліппів і обертів.

Наприклад, для імітації italic typeface від slanting, застосувати наступний трансформатор Transform2D(1.0, slant, 0.0, 1.0, 0.0).


Описи методів

void set_spacing(spacing: SpacingType, value: int) 🔗

Встановлює інтервал для spacing на value у пікселях (не відносно розміру шрифту).