Opis
Do zarządzania ustawieniami czcionek Chrome używaj interfejsu API chrome.fontSettings
.
Uprawnienia
fontSettings
Aby używać interfejsu Font Settings API, musisz zadeklarować uprawnienia "fontSettings"
w rozszerzeniu
pliku manifestu. Na przykład:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
Pojęcia i wykorzystanie
Chrome umożliwia stosowanie niektórych ustawień czcionek w przypadku określonych ogólnych rodzin czcionek i języka. skryptów. Na przykład czcionka dla chińskiego uproszczonego bezszeryfowego może być inna niż czcionka używany jako japoński szeryfowy.
Ogólne rodziny czcionek obsługiwane w Chrome opierają się na ogólnych rodzinach czcionek CSS i są
wymienione w sekcji GenericReference
. Jeśli strona internetowa określa ogólną rodzinę czcionek, Chrome wybiera opcję
wybierz czcionkę na podstawie odpowiedniego ustawienia. Jeśli nie określono ogólnej rodziny czcionek, Chrome używa atrybutu
dla „standardowego” ustawienia ogólną rodzinę czcionek.
Gdy strona internetowa określa język, Chrome wybiera czcionkę na podstawie ustawień w interfejsie odpowiednim alfabetem języka. Jeśli nie określisz języka, Chrome użyje ustawienia domyślnego, czy też globalny, skrypt.
Obsługiwane skrypty języków są określone w kodzie skryptu ISO 15924 i wymienione w
ScriptCode
Technicznie rzecz biorąc, ustawienia Chrome nie zależą tylko od konkretnego skryptu, ale też od tego,
język. Na przykład Chrome wybiera czcionkę dla cyrylicy (kod skryptu w formacie ISO 15924 „Cyrl”), jeśli
języka rosyjskiego i korzysta z tej czcionki nie tylko dla cyrylicy, ale też dla
wszystkiego, co obejmuje czcionka, na przykład alfabetu łacińskiego.
Przykłady
Poniższy kod pobiera standardową czcionkę dla języka arabskiego.
chrome.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
Następny fragment kodu ustawia czcionkę bezszeryfową dla języka japońskiego.
chrome.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Aby wypróbować ten interfejs API, zainstaluj przykładowy interfejs API fontSettings ze strony chrome-extension-samples z repozytorium.
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 CSS.
Typ wyliczeniowy
"standard"
"sansserif"
"Serif"
"stały"
"kursywa"
"fantasy"
"math"
LevelOfControl
Jedna z tych wartości:
not\_controllable
: nie można sterować przez żadne rozszerzenie
controlled\_by\_other\_extensions
: zarządzana przez rozszerzenia o wyższym priorytecie
controllable\_by\_this\_extension
: może być kontrolowane przez to rozszerzenie
controlled\_by\_this\_extension
: zarządzane przez to rozszerzenie
Typ wyliczeniowy
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"
ScriptCode
Kod skryptu ISO 15924. Domyślny, czyli globalny, skrypt jest reprezentowany przez kod skryptu „Zyyy”.
Typ wyliczeniowy
"Afak"
"arabski"
"Armi"
"Armena"
"Avst"
"Bali"
"Bamu"
"Bass"
"Batk"
"Beng"
"Blis"
"Bopo"
"Brah"
"Brai"
"Bugi"
"Buhd"
"Cakm"
"Puszki"
"Cari"
"Cham"
„Dopinguj”
"Cirt"
"Copt"
"Cprt"
"Cyrl"
"Cyrs"
"Deva"
"Dsrt"
"Dupl"
"Egyd"
"Egyh"
"Egyp"
"Elba"
"Ethi"
"Geor"
"Geok"
"Glag"
"Goth"
"Gran"
"Grecki"
"Gudżr"
"Guru"
"Hang"
"Hani"
"Hano"
"Hans"
"Hant"
"Hebr"
"Hluw"
"Hmng"
„Zawieszenie”
"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"
"Maja"
"Zmień"
"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"
"Bieganie"
"Samr"
"Sara"
"Sarb"
"Saur"
"Sgnw"
"Ciesz"
"Shrd"
"Sind"
"Sinh"
"Sora"
"Słoń"
"Sylo"
"Syrc"
"Syre"
"Syrj"
"Syrn"
"Tagb"
"Takr"
"Historia"
"Talu"
"Taml"
"Tang"
"Tavt"
"Telu"
"Teng"
"Tfng"
"Tglg"
"Taa"
"tajski"
"Tibt"
"Tirh"
"Ugar"
"Vaii"
"Visp"
"Wara"
"wełna"
"Xpeo"
"Xsux"
"Yiii"
"Zmth"
"Zsym"
"Zyyy"
Metody
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
)
Usuwa domyślny stały rozmiar czcionki ustawiony przez to rozszerzenie (jeśli istnieje).
Parametry
-
szczegóły
obiekt opcjonalny
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
)
Usuwa domyślny rozmiar czcionki ustawiony przez to rozszerzenie (jeśli został ustawiony).
Parametry
-
szczegóły
obiekt opcjonalny
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
)
Usuwa czcionkę ustawioną przez to rozszerzenie (jeśli jakaś występuje).
Parametry
-
szczegóły
Obiekt
-
genericFamily
Ogólna rodzina czcionek, dla której czcionka ma zostać wyczyszczona.
-
pismo
Opcjonalny ScriptCode
Skrypt, którego czcionka ma zostać wyczyszczona. Jeśli go pominiesz, ustawienie czcionki globalnego skryptu zostanie wyczyszczone.
-
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
)
Usuwa minimalny rozmiar czcionki ustawiony przez to rozszerzenie (jeśli został ustawiony).
Parametry
-
szczegóły
obiekt opcjonalny
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
)
Pobiera domyślny rozmiar czcionek o stałej szerokości.
Parametry
-
szczegóły
obiekt opcjonalny
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
Zwroty
-
Promise<object>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
)
Pobiera domyślny rozmiar czcionki.
Parametry
-
szczegóły
obiekt opcjonalny
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
Zwroty
-
Promise<object>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
)
Pobiera czcionkę dla danego skryptu i ogólną rodzinę czcionek.
Parametry
-
szczegóły
Obiekt
-
genericFamily
Ogólna rodzina czcionek, dla której ma zostać pobrana czcionka.
-
pismo
Opcjonalny ScriptCode
Skrypt, dla którego należy pobrać czcionkę. W przypadku pominięcia tego ustawienia pobierane jest ustawienie czcionki dla skryptu globalnego (kod skryptu „Zyyy”).
-
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
fontId
ciąg znaków
Identyfikator czcionki. Może to być identyfikator czcionki, do której system rozpozna tę wartość, a nie jej wartość literału. Wartość
fontId
może się więc różnić od czcionki przekazanej dosetFont
, jeśli na przykład czcionka nie jest dostępna w systemie. Pusty ciąg oznacza użycie globalnego ustawienia czcionki skryptu. -
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
-
Zwroty
-
Promise<object>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
)
Pobiera listę czcionek w systemie.
Parametry
Zwroty
-
Promise<FontName[]>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
)
Pobiera minimalny rozmiar czcionki.
Parametry
-
szczegóły
obiekt opcjonalny
Ten parametr nie jest obecnie używany.
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
Zwroty
-
Promise<object>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do 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
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do 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
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
)
Ustawia czcionkę dla danego skryptu i ogólną rodzinę czcionek.
Parametry
-
szczegóły
Obiekt
-
fontId
ciąg znaków
Identyfikator czcionki. Pusty ciąg oznacza użycie globalnego ustawienia czcionki skryptu.
-
genericFamily
Ogólna rodzina czcionek, dla której ma być ustawiona czcionka.
-
pismo
Opcjonalny ScriptCode
Kod skryptu, który określa czcionkę. Jeśli go pominiesz, ustawienie czcionki dla skryptu globalnego (kod skryptu „Zyyy”) zostanie ustawione.
-
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do 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
funkcja optional
Parametr
callback
wygląda tak:() => void
Zwroty
-
Obietnica<void>
Chrome w wersji 96 lub nowszej, .Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.
Wydarzenia
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Uruchamiane po zmianie domyślnego ustawienia stałego rozmiaru czcionki.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Uruchamiane po zmianie domyślnego ustawienia rozmiaru czcionki.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Uruchamiane po zmianie ustawienia czcionki.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
fontId
ciąg znaków
Identyfikator czcionki. Zobacz opis w tym języku:
getFont
. -
genericFamily
Ogólna rodzina czcionek, dla której zmieniono ustawienie czcionki.
-
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
pismo
Opcjonalny ScriptCode
Kod skryptu, którego ustawienie czcionki zostało zmienione.
-
-
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Uruchamiane po zmianie ustawienia minimalnego rozmiaru czcionki.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
levelOfControl
Poziom kontroli nad ustawieniem przez to rozszerzenie.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-