дата обновления: 2026-09-25 robots: noindex
Описание
Для управления настройками шрифтов в Chrome используйте API chrome.fontSettings .
Разрешения
fontSettingsМанифест
Для использования API настроек шрифтов необходимо указать разрешение "fontSettings" в манифесте расширения . Например:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
Универсальные семейства шрифтов и рукописные шрифты
Chrome позволяет некоторым настройкам шрифта зависеть от определенных общих семейств шрифтов и языковых систем. Например, шрифт, используемый для упрощенного китайского языка без засечек, может отличаться от шрифта, используемого для японского языка с засечками.
Поддерживаемые Chrome универсальные семейства шрифтов основаны на универсальных семействах шрифтов CSS и перечислены в справочнике API ниже. Когда веб-страница указывает универсальное семейство шрифтов, Chrome выбирает шрифт на основе соответствующей настройки. Если универсальное семейство шрифтов не указано, Chrome использует настройку для «стандартного» универсального семейства шрифтов.
Когда на веб-странице указан язык, Chrome выбирает шрифт на основе настроек соответствующего языкового кода. Если язык не указан, Chrome использует настройки кода по умолчанию, или глобального кода.
Поддерживаемые языковые системы письма определяются кодом ISO 15924 и перечислены в справочнике API ниже. Технически, настройки Chrome не являются строго индивидуальными для каждой системы письма, а также зависят от языка. Например, Chrome выбирает шрифт для кириллицы (код ISO 15924 «Cyrr»), когда на веб-странице указан русский язык, и использует этот шрифт не только для кириллицы, но и для всего, что охватывает этот шрифт, например, для латыни.
Примеры
Следующий код загружает стандартный шрифт для арабского языка.
chrome.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
Следующий фрагмент кода устанавливает шрифт без засечек для японского языка.
chrome.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Чтобы опробовать этот API, установите пример fontSettings API из репозитория chrome-extension-samples .
Типы
FontName
Представляет собой название шрифта.
Характеристики
- отображаемое имя
нить
Отображаемое название шрифта.
- fontId
нить
Идентификатор шрифта.
GenericFamily
Семейство универсальных шрифтов CSS.
Перечисление
«стандартный» "без шрифта" "serif" "зафиксированный" "курсивный" "фантастика" "математика"
LevelOfControl
Один из вариантов: not\_controllable : не может контролироваться никаким расширением controlled\_by\_other\_extensions : контролируется расширениями с более высоким приоритетом controllable\_by\_this\_extension : может контролироваться этим расширением controlled\_by\_this\_extension : контролируется этим расширением.
Перечисление
"не_контролируемый" "controlled_by_other_extensions" "управляемый_этим_расширением" "контролируется_этим_расширением"
ScriptCode
Код скрипта ISO 15924. Скрипт по умолчанию, или глобальный скрипт, обозначается кодом скрипта "Zyyy".
Перечисление
"Афак" "Араб" "Арми" "Арм" "Авст" "Бали" "Баму" "Бас" "Бэтк" "Бенг" "Блаженство" "Бопо" "Брах" "Браи" "Буги" "Буд" "Какм" "Банки" "Кари" "Шам" "Шер" "Cirt" "Копт" "Cprt" "Кирл" "Сирс" "Дева" "Dsrt" "Дупл" «Егид» "Эгих" "Египет" "Эльба" "Эти" "Геор" "Геок" "Глаг" "Гот" "Бабушка" "греческий" "Гуджр" "Гуру" "Вешать" "Хани" "Хано" «Ганс» "Хант" «Евр» "Хлув" "Хмнг" "Втянутый" "Индс" "Итал" "Ява" "Япония" "Юрк" "Кали" "Хар" "Хмр" "Ходж" "Кнда" "Кпель" "Кти" "Лана" "Лаоо" "Латф" "Латг" "Латн" "Лепк" "Конечность" "Лина" "Линб" "Лису" "Лома" "Лиси" "Лиди" "Манд" "Мани" "Майя" "Исправить" "Мерк" "Меро" «Млим» "Луна" "Монг" "Мру" "Мтей" "Мимр" «Нарб» "Нбат" "Нкгб" "Нкоо" "Ншу" "Огам" "Олк" «Орх» "Орья" "Осма" "Ладонь" "Пермь" "Фаг" "Фли" "Флп" "Флв" "Phnx" "Плрд" "Прти" "Рджнг" "Роро" "Бегун" «Самр» "Сара" «Сарб» "Саур" "Sgnw" "Шоу" "Осколок" "Синд" "Синх" "Сора" «Солнце» "Сайло" "Сирк" "Сайр" "Сирж" "Сирн" "Тагб" "Такр" «Сказка» "Талу" "Тамл" "Тан" "Тавт" "Телу" "Тенг" "Тфнг" "Тглг" "Тхаа" "Тайский" "Тибт" "Тирх" "Угар" "Вайи" "Висп" "Вара" "Воле" "Xpeo" "Xsux" "Йиии" "Змт" "Зсим" "Зийй"
Методы
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
): Promise<void>
Сбрасывает установленный этим расширением размер шрифта по умолчанию, если таковой имеется.
Параметры
- подробности
объект необязательный
Этот параметр в настоящее время не используется.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
): Promise<void>
Сбрасывает размер шрифта по умолчанию, установленный этим расширением, если таковой имеется.
Параметры
- подробности
объект необязательный
Этот параметр в настоящее время не используется.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
): Promise<void>
Очищает шрифт, установленный этим расширением, если таковой имеется.
Параметры
- подробности
объект
- genericFamily
Семейство шрифтов общего назначения, для которого необходимо очистить шрифт.
- скрипт
ScriptCode ( необязательно)
Шрифт, для которого следует очистить настройки шрифта. Если этот параметр опущен, глобальные настройки шрифта для данного шрифта очищаются.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
): Promise<void>
Сбрасывает минимальный размер шрифта, установленный этим расширением, если таковой имеется.
Параметры
- подробности
объект необязательный
Этот параметр в настоящее время не используется.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
): Promise<object>
Определяет размер по умолчанию для шрифтов фиксированной ширины.
Параметры
- подробности
объект необязательный
Этот параметр в настоящее время не используется.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- уровень контроля
Уровень контроля, который это расширение имеет над настройками.
- pixelSize
число
Размер шрифта в пикселях.
Возвраты
Promise<object>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
): Promise<object>
Задает размер шрифта по умолчанию.
Параметры
- подробности
объект необязательный
Этот параметр в настоящее время не используется.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- уровень контроля
Уровень контроля, который это расширение имеет над настройками.
- pixelSize
число
Размер шрифта в пикселях.
Возвраты
Promise<object>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
): Promise<object>
Получает шрифт для заданного алфавита и семейства шрифтов.
Параметры
- подробности
объект
- genericFamily
Семейство шрифтов общего назначения, для которого следует получить шрифт.
- скрипт
ScriptCode ( необязательно)
Скрипт, для которого необходимо получить шрифт. Если этот параметр опущен, будет получена настройка шрифта для глобального скрипта (код скрипта "Zyyy").
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- fontId
нить
Идентификатор шрифта. Вместо буквального значения параметра ID шрифта, это может быть идентификатор шрифта, которому система присваивает значение параметра. Таким образом,
fontIdможет отличаться от шрифта, переданного вsetFont, если, например, шрифт недоступен в системе. Пустая строка означает использование глобальной настройки шрифта для скриптов в качестве резервного варианта. - уровень контроля
Уровень контроля, который это расширение имеет над настройками.
Возвраты
Promise<object>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
): Promise<FontName[]>
Получает список шрифтов, имеющихся в системе.
Параметры
Возвраты
Promise< FontName []>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
): Promise<object>
Определяет минимальный размер шрифта.
Параметры
- подробности
объект необязательный
Этот параметр в настоящее время не используется.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- уровень контроля
Уровень контроля, который это расширение имеет над настройками.
- pixelSize
число
Размер шрифта в пикселях.
Возвраты
Promise<object>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
callback?: function,
): Promise<void>
Задает размер по умолчанию для шрифтов фиксированной ширины.
Параметры
- подробности
объект
- pixelSize
число
Размер шрифта в пикселях.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
): Promise<void>
Устанавливает размер шрифта по умолчанию.
Параметры
- подробности
объект
- pixelSize
число
Размер шрифта в пикселях.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
): Promise<void>
Задает шрифт для заданного рукописного текста и семейства шрифтов общего назначения.
Параметры
- подробности
объект
- fontId
нить
Идентификатор шрифта. Пустая строка означает, что в качестве запасного варианта будет использоваться глобальный шрифт для рукописного ввода.
- genericFamily
Семейство шрифтов общего назначения, для которого следует установить шрифт.
- скрипт
ScriptCode ( необязательно)
Код скрипта, для которого должен быть установлен шрифт. Если он опущен, устанавливается шрифт для глобального скрипта (код скрипта "Zyyy").
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
callback?: function,
): Promise<void>
Устанавливает минимальный размер шрифта.
Параметры
- подробности
объект
- pixelSize
число
Размер шрифта в пикселях.
- перезвонить
функция необязательна
Параметр
callbackвыглядит следующим образом:() => void
Возвраты
Обещание<пустота>
Chrome 96+Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.
События
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Срабатывает при изменении значения параметра «фиксированный размер шрифта» по умолчанию.
Параметры
- перезвонить
функция
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- уровень контроля
Уровень контроля, который это расширение имеет над настройками.
- pixelSize
число
Размер шрифта в пикселях.
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Срабатывает при изменении значения размера шрифта по умолчанию.
Параметры
- перезвонить
функция
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- уровень контроля
Уровень контроля, который это расширение имеет над настройками.
- pixelSize
число
Размер шрифта в пикселях.
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Срабатывает при изменении настроек шрифта.
Параметры
- перезвонить
функция
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- fontId
нить
Идентификатор шрифта. См. описание в
getFont. - genericFamily
Семейство шрифтов общего назначения, для которого были изменены настройки шрифта.
- уровень контроля
Уровень контроля, который это расширение имеет над настройками.
- скрипт
ScriptCode ( необязательно)
Код скрипта, для которого изменились настройки шрифта.
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Срабатывает при изменении минимального размера шрифта.
Параметры
- перезвонить
функция
Параметр
callbackвыглядит следующим образом:(details: object) => void
- подробности
объект
- уровень контроля
Уровень контроля, который это расширение имеет над настройками.
- pixelSize
число
Размер шрифта в пикселях.