ШрифтFace
Базовая линия Широко доступна *
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с января 2020 года.
* Некоторые части этой функции могут иметь различный уровень поддержки.
Примечание: Эта функция доступна в Web Workers.
Интерфейс FontFace API загрузки шрифтов CSS представляет собой один пригодный для использования шрифт.
Этот интерфейс определяет источник шрифта, либо URL внешнего ресурса, либо буфер, и свойства шрифта, такие как style, weight, и так далее. Для источников шрифтов по URL он позволяет авторам запускать событие при загрузке удалённого шрифта и отслеживать состояние загрузки.
Конструктор
FontFace()-
Создаёт и возвращает новый объект
FontFace, созданный из внешнего ресурса, описанного URL, или изArrayBuffer.
Свойства экземпляра
FontFace.ascentOverride-
Строка, которая получает или задаёт метрику восхождения шрифта. Она эквивалентна описателю
ascent-override. FontFace.descentOverride-
Строка, которая получает или задаёт метрику нисхождения шрифта. Она эквивалентна описателю
descent-override. FontFace.display-
Строка, которая определяет отображение шрифта на основе того, загружен ли он и готов к использованию.
FontFace.family-
Строка, которая получает или задаёт название шрифта. Она эквивалентна описателю
font-family. FontFace.featureSettings-
Строка, которая получает или задаёт редко используемые характеристики шрифта, которые недоступны из свойств варианта шрифта. Она эквивалентна свойству CSS
font-feature-settings. FontFace.lineGapOverride-
Строка, которая получает или задаёт метрику межстрочного интервала шрифта. Она эквивалентна описателю
line-gap-override. -
FontFace.loadedТолько для чтения -
Возвращает
Promise, который разрешается объектомFontFace, когда шрифт, указанный в конструкторе объекта, завершает загрузку, или отклоняется сSyntaxErrorDOMException. -
FontFace.statusТолько для чтения -
Возвращает перечисление, указывающее состояние шрифта, одно из
"unloaded","loading","loaded", или"error". FontFace.stretch-
Строка, которая получает или задаёт, как шрифт растягивается. Она эквивалентна описателю
font-stretch. FontFace.style-
Строка, которая получает или задаёт стиль шрифта. Она эквивалентна описателю
font-style. FontFace.unicodeRange-
Строка, которая получает или задаёт диапазон кодов Юникода, охватывающий шрифт. Она эквивалентна описателю
unicode-range. -
FontFace.variantНестандартный -
Строка, которая получает или задаёт вариант шрифта.
-
FontFace.variationSettingsЭкспериментальный -
Строка, которая получает или задаёт настройки вариаций шрифта. Она эквивалентна описателю
font-variation-settings. FontFace.weight-
Строка, содержащая вес шрифта. Она эквивалентна описателю
font-weight. FontFace.load()-
Загружает шрифт на основе требований, переданных в конструктор объекта, включая местоположение или буфер источника, и возвращает
Promise, который разрешается текущим объектом FontFace.
Примеры
Код ниже определяет шрифт с данными по URL "my-font.woff" с несколькими описателями шрифтов. Для демонстрации работы, мы затем определяем описатель stretch с помощью свойства.
//Define a FontFace
const font = new FontFace("my-font", "url(my-font.woff)", {
style: "italic",
weight: "400",
});
font.stretch = "condensed";
Далее мы загружаем шрифт с помощью FontFace.load() и используем возвращаемое обещание для отслеживания завершения или сообщения об ошибке.
//Load the font
font.load().then(
() => {
// Resolved - add font to document.fonts
},
(err) => {
console.error(err);
},
);
Для фактического использования шрифта нам необходимо добавить его в FontFaceSet. Это можно сделать до или после загрузки шрифта.
Дополнительные примеры см. в API загрузки шрифтов CSS > Примеры.
Спецификации
| Спецификация |
|---|
| CSS Font Loading Module Level 3 # fontface-interface |
Совместимость браузеров
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
FontFace |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
FontFace |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
ascentOverride |
87 | 87 | 89 | 73 | Нет | 87 | 89 | 62 | Нет | 14.0 | 87 |
descentOverride |
87 | 87 | 89 | 73 | Нет | 87 | 89 | 62 | Нет | 14.0 | 87 |
display |
60 | 79 | 58 | 47 | 11.1 | 60 | 58 | 44 | 11.3 | 8.0 | 60 |
family |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
featureSettings |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
lineGapOverride |
87 | 87 | 89 | 73 | Нет | 87 | 89 | 62 | Нет | 14.0 | 87 |
load |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
loaded |
37 | 79 | 41 | 24 | 10 | 37 | 41 | 24 | 10 | 4.0 | 37 |
status |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
stretch |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
style |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
unicodeRange |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
variant |
35 | 79 | 41 | 22 | 10–13.1 | 35 | 41 | 22 | 10–13.4 | 4.0 | 37 |
variationSettings |
Нет | Нет | 62 | Нет | Нет | Нет | 62 | Нет | Нет | Нет | Нет |
weight |
35 | 79 | 41 | 22 | 10 | 35 | 41 | 22 | 10 | 4.0 | 37 |
worker_support |
69 | 79 | 105 | 56 | Нет | 69 | 105 | 48 | Нет | 10.0 | 69 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/FontFace