Opis
Aby zarządzać ustawieniami czcionek w Chrome, użyj interfejsu API chrome.fontSettings
.
Uprawnienia
fontSettings
Aby używać interfejsu Font Settings API, musisz zadeklarować uprawnienie "fontSettings"
w pliku manifestu rozszerzenia. Na przykład:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
Pojęcia i zastosowanie
Chrome umożliwia uzależnienie niektórych ustawień czcionek od określonych ogólnych rodzin czcionek i skryptów językowych. Na przykład czcionka używana w języku chińskim uproszczonym bezszeryfowym może być inna niż czcionka używana w języku japońskim szeryfowym.
Ogólne rodziny czcionek obsługiwane przez Chrome są oparte na ogólnych rodzinach czcionek CSS i znajdują się w sekcji GenericReference
. Gdy strona internetowa określa ogólną rodzinę czcionek, Chrome wybiera czcionkę na podstawie odpowiedniego ustawienia. Jeśli nie zostanie określona żadna ogólna rodzina czcionek, Chrome użyje ustawienia „standardowej” ogólnej rodziny czcionek.
Gdy strona internetowa określa język, Chrome wybiera czcionkę na podstawie ustawienia odpowiedniego alfabetu. Jeśli nie zostanie określony żaden język, Chrome użyje ustawienia domyślnego lub globalnego.
Obsługiwane alfabety są określone za pomocą kodu pisma ISO 15924 i wymienione w sekcji ScriptCode
. Ustawienia Chrome nie są ściśle związane ze skryptem, ale zależą też od języka. Na przykład, gdy strona internetowa określa język rosyjski, Chrome wybiera czcionkę cyrylicy (kod ISO 15924 „Cyrl”), która jest używana nie tylko do cyrylicy, ale także do wszystkich innych znaków, np. łacińskich.
Przykłady
Ten kod pobiera standardowy font arabski.
chrome.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
Następny fragment kodu ustawia czcionkę bezszeryfową w języku japońskim.
chrome.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Aby wypróbować ten interfejs API, zainstaluj przykład interfejsu FontSettings API z repozytorium chrome-extension-samples.
Typy
FontName
Reprezentuje nazwę czcionki.
Właściwości
-
wyświetlanaNazwa
ciąg znaków
Wyświetlana nazwa czcionki.
-
fontId
ciąg znaków
Identyfikator czcionki.
GenericFamily
Ogólna rodzina czcionek w CSS.
Typ wyliczeniowy
„standard”
"sansserif"
„serif”
„fixed”
„cursive”
"fantasy"
„math”
LevelOfControl
not\_controllable
: nie można go kontrolować za pomocą żadnego rozszerzenia
controlled\_by\_other\_extensions
: jest kontrolowane przez rozszerzenia o wyższym priorytecie
controllable\_by\_this\_extension
: można go kontrolować za pomocą tego rozszerzenia
controlled\_by\_this\_extension
: jest kontrolowane przez to rozszerzenie
Typ wyliczeniowy
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"
ScriptCode
kod skryptu w formacie ISO 15924. Domyślny, czyli globalny skrypt, ma kod „Zyyy”.
Typ wyliczeniowy
„Afak”
"Arab"
„Armi”
„Armn”
„Avst”
„Bali”
„Bamu”
„Bas”
„Batk”
„Beng”
"Blis"
„Bopo”
„Brah”
„Brai”
„Błędy”
„Buhd”
„Cakm”
"Cans"
„Cari”
„Cham”
„Cher”
„Cirt”
„Copt”
„Cprt”
„Cyrl”
"Cyrs"
„Deva”
„Dsrt”
„Dupl”
„Egyd”
„Egyh”
„Egipt”
"Elba"
„Ethi”
„Geor”
„Geok”
„Glag”
„Goth”
"Gran"
"Grek"
„Gujr”
„Guru”
„Hang”
„Hani”
„Hano”
„Hans”
„Hant”
„Hebr.”
„Hluw”
„Hmng”
„Hung”
"Inds"
"Ital"
„Java”
„Jpan”
"Jurc"
"Kali"
„Khar”
„Khmr”
„Khoj”
„Knda”
„Kpel”
„Kthi”
„Lana”
„Laoo”
„Latf”
„Latg”
"Latn"
„Lepc”
"Limb"
„Lina”
"Linb"
„Lisu”
„Loma”
„Lyci”
„Lydi”
„Mand”
„Mani”
„Maya”
„Napraw”
„Merc”
„Mero”
„Mlym”
"Księżyc"
„Mong”
„Mroo”
„Mtei”
„Mymr”
„Narb”
„Nbat”
„Nkgb”
„Nkoo”
„Nshu”
"Ogam"
„Olck”
„Orkh”
„Orya”
„Osma”
„Palm”
„Perm”
„Phag”
„Phli”
„Phlp”
„Phlv”
„Phnx”
„Plrd”
„Prti”
„Rjng”
„Roro”
„Runr”
„Samr”
„Sara”
„Sarb”
„Saur”
"Sgnw"
„Shaw”
„Shrd”
„Sind”
"Sinh"
„Sora”
„Sund”
"Sylo"
„Syrc”
„Syre”
„Syrj”
„Syrn”
„Tagb”
„Takr”
„Tale”
„Talu”
„Taml”
„Tang”
„Tavt”
„Telu”
„Teng”
„Tfng”
„Tglg”
„Thaa”
"Thai"
„Tibt”
„Tirh”
„Ugar”
"Vaii"
„Visp”
„Wara”
„Wole”
„Xpeo”
„Xsux”
„Yiii”
"Zmth"
„Zsym”
„Zyyy”
Metody
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
)
Czyści domyślny stały rozmiar czcionki ustawiony przez to rozszerzenie (jeśli taki istnieje).
Parametry
-
szczegóły
object opcjonalne
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
)
Czyści domyślny rozmiar czcionki ustawiony przez to rozszerzenie (jeśli został ustawiony).
Parametry
-
szczegóły
object opcjonalne
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
)
Czyści czcionkę ustawioną przez to rozszerzenie (jeśli była ustawiona).
Parametry
-
szczegóły
Obiekt
-
genericFamily
Ogólna rodzina czcionek, z której czcionka ma zostać usunięta.
-
pismo
ScriptCode opcjonalnie
Skrypt, z którego ma zostać usunięta czcionka. W przypadku pominięcia tej informacji ustawienie czcionki globalnej skryptu zostanie wyczyszczone.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
)
Czyści minimalny rozmiar czcionki ustawiony przez to rozszerzenie (jeśli został ustawiony).
Parametry
-
szczegóły
object opcjonalne
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
)
Pobiera domyślny rozmiar czcionek o stałej szerokości.
Parametry
-
szczegóły
object opcjonalne
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
Zwroty
-
Obietkw<object>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
)
Pobiera domyślny rozmiar czcionki.
Parametry
-
szczegóły
object opcjonalne
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
Zwroty
-
Obietkw<object>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
)
Pobiera czcionkę dla danego skryptu i ogólnej rodziny czcionek.
Parametry
-
szczegóły
Obiekt
-
genericFamily
Ogólna rodzina czcionek, z której ma zostać pobrany czcionka.
-
pismo
ScriptCode opcjonalnie
Skrypt, z którego ma zostać pobrana czcionka. Jeśli nie zostanie podany, zostanie pobrana czcionka dla skryptu globalnego (kod skryptu „Zyyy”).
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
fontId
ciąg znaków
Identyfikator czcionki. Zamiast dosłownej wartości preferencji identyfikatora czcionki może to być identyfikator czcionki, do której system przekształca wartość preferencji. Oznacza to, że
fontId
może się różnić od czcionki przekazanej dosetFont
, jeśli na przykład czcionka jest niedostępna w systemie. Pusty ciąg znaków oznacza użycie domyślnego ustawienia czcionki skryptu. -
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
-
Zwroty
-
Obietkw<object>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
)
Pobiera listę czcionek na systemie.
Parametry
Zwroty
-
Promise<FontName[]>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
)
Pobiera minimalny rozmiar czcionki.
Parametry
-
szczegóły
object opcjonalne
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
Zwroty
-
Obietkw<object>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
callback?: function,
)
Ustawia domyślny rozmiar czcionek o stałej szerokości.
Parametry
-
szczegóły
Obiekt
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
)
Ustawia domyślny rozmiar czcionki.
Parametry
-
szczegóły
Obiekt
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
)
Ustawia czcionkę dla danego zapisu i ogólnej rodziny czcionek.
Parametry
-
szczegóły
Obiekt
-
fontId
ciąg znaków
Identyfikator czcionki. Pusty ciąg znaków oznacza użycie globalnego ustawienia czcionki skryptu.
-
genericFamily
Ogólna rodzina czcionek, dla której ma być ustawiony czcionka.
-
pismo
ScriptCode opcjonalnie
Kod skryptu, w którym ma być ustawiona czcionka. Jeśli nie zostanie podany, zostanie ustawione ustawienie czcionki dla skryptu globalnego (kod skryptu „Zyyy”).
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
callback?: function,
)
Ustawia minimalny rozmiar czcionki.
Parametry
-
szczegóły
Obiekt
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96+Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnicy zwraca ten sam typ, który jest przekazywany do funkcji wywołania zwrotnego.
Wydarzenia
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Wywoływane po zmianie domyślnego ustawienia rozmiaru czcionki.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Wywoływany po zmianie domyślnego ustawienia rozmiaru czcionki.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Wyzwalane, gdy ustawienie czcionki się zmieni.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
fontId
ciąg znaków
Identyfikator czcionki. Zobacz opis w sekcji
getFont
. -
genericFamily
Ogólna rodzina czcionek, dla której zmieniono ustawienie czcionki.
-
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
pismo
ScriptCode opcjonalnie
Kod skryptu, którego ustawienie czcionki zostało zmienione.
-
-
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Wywoływany po zmianie ustawienia minimalnego rozmiaru czcionki.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
ma postać:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli, jaką to rozszerzenie ma nad tym ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-