Opis
Użyj interfejsu API chrome.fontSettings, aby zarządzać ustawieniami czcionek w Chrome.
Uprawnienia
fontSettingsAby korzystać z 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 użycie
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 przypadku bezszeryfowego uproszczonego chińskiego może być inna niż czcionka używana w przypadku szeryfowego japońskiego.
Ogólne rodziny czcionek obsługiwane przez Chrome są oparte na ogólnych rodzinach czcionek CSS i są wymienione w sekcji GenericReference. Gdy strona internetowa określa ogólną rodzinę czcionek, Chrome wybiera czcionkę na podstawie odpowiedniego ustawienia. Jeśli nie określono ogólnej rodziny czcionek, Chrome używa ustawienia „standardowej” ogólnej rodziny czcionek.
Gdy strona internetowa określa język, Chrome wybiera czcionkę na podstawie ustawienia odpowiedniego skryptu językowego. Jeśli nie określono języka, Chrome używa ustawienia domyślnego lub globalnego skryptu.
Obsługiwane skrypty językowe są określone przez kod skryptu ISO 15924 i wymienione w sekcji ScriptCode. Technicznie rzecz biorąc, ustawienia Chrome nie są ściśle powiązane z pismem, ale zależą też od języka. Na przykład Chrome wybiera czcionkę dla cyrylicy (kod alfabetu ISO 15924 „Cyrl”), gdy strona internetowa określa język rosyjski, i używa tej czcionki nie tylko do cyrylicy, ale do wszystkiego, co obejmuje ta czcionka, np. do alfabetu łacińskiego.
Przykłady
Poniższy kod pobiera standardową czcionkę dla języka arabskiego.
browser.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
Następny fragment kodu ustawia czcionkę Sans Serif dla języka japońskiego.
browser.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
tekst
Wyświetlana nazwa czcionki.
-
fontId
tekst
Identyfikator czcionki.
GenericFamily
Ogólna rodzina czcionek CSS.
Typ wyliczeniowy
"standard"
"sansserif"
"serif"
"fixed"
"cursive"
"fantasy"
"math"
LevelOfControl
Jedna z tych wartości:
not\_controllable: nie może być kontrolowane przez żadne rozszerzenie
controlled\_by\_other\_extensions: kontrolowane przez rozszerzenia o wyższym priorytecie
controllable\_by\_this\_extension: może być kontrolowane przez to rozszerzenie
controlled\_by\_this\_extension: kontrolowane przez to rozszerzenie
Typ wyliczeniowy
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"
ScriptCode
Kod pisma w formacie ISO 15924. Domyślne lub globalne pismo jest reprezentowane przez kod „Zyyy”.
Typ wyliczeniowy
„Afak”
"Arab"
„Aran”
„Armi”
"Armn"
"Avst"
"Bali"
„Bamu”
„Bas”
"Batk"
"Beng"
„Blis”
„Bopo”
„Brah”
"Brai"
„Bugi”
„Buhd”
"Cakm"
"Cans"
„Cari”
"Cham"
„Cher”
"Cirt"
"Copt"
"Cprt"
"Cyrl"
„Cyrs”
"Deva"
"Dsrt"
„Dupl”
„Egyd”
„Egyh”
"Egyp"
„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”
„Mend”
"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()
browser.fontSettings.clearDefaultFixedFontSize(
details?: object,
): Promise<void>
Usuwa domyślny stały rozmiar czcionki ustawiony przez to rozszerzenie (jeśli jest ustawiony).
Parametry
-
szczegóły
object opcjonalny
Ten parametr nie jest obecnie używany.
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
clearDefaultFontSize()
browser.fontSettings.clearDefaultFontSize(
details?: object,
): Promise<void>
Usuwa domyślny rozmiar czcionki ustawiony przez to rozszerzenie, jeśli taki istnieje.
Parametry
-
szczegóły
object opcjonalny
Ten parametr nie jest obecnie używany.
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
clearFont()
browser.fontSettings.clearFont(
details: object,
): Promise<void>
Usuwa czcionkę ustawioną przez to rozszerzenie, jeśli jest ustawiona.
Parametry
-
szczegóły
obiekt
-
genericFamily
Ogólna rodzina czcionek, dla której czcionka powinna zostać wyczyszczona.
-
pismo
ScriptCode opcjonalny
Skrypt, dla którego należy usunąć czcionkę. Jeśli pominiesz tę wartość, globalne ustawienie czcionki skryptu zostanie wyczyszczone.
-
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
clearMinimumFontSize()
browser.fontSettings.clearMinimumFontSize(
details?: object,
): Promise<void>
Usuwa minimalny rozmiar czcionki ustawiony przez to rozszerzenie (jeśli jest ustawiony).
Parametry
-
szczegóły
object opcjonalny
Ten parametr nie jest obecnie używany.
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
getDefaultFixedFontSize()
browser.fontSettings.getDefaultFixedFontSize(
details?: object,
): Promise<object>
Pobiera domyślny rozmiar czcionek o stałej szerokości.
Parametry
-
szczegóły
object opcjonalny
Ten parametr nie jest obecnie używany.
Zwroty
-
Promise<object>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
getDefaultFontSize()
browser.fontSettings.getDefaultFontSize(
details?: object,
): Promise<object>
Pobiera domyślny rozmiar czcionki.
Parametry
-
szczegóły
object opcjonalny
Ten parametr nie jest obecnie używany.
Zwroty
-
Promise<object>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
getFont()
browser.fontSettings.getFont(
details: object,
): Promise<object>
Pobiera czcionkę dla danego skryptu i ogólnej rodziny czcionek.
Parametry
-
szczegóły
obiekt
-
genericFamily
Ogólna rodzina czcionek, dla której należy pobrać czcionkę.
-
pismo
ScriptCode opcjonalny
Skrypt, dla którego ma zostać pobrana czcionka. Jeśli zostanie pominięty, pobierane jest ustawienie czcionki dla skryptu globalnego (kod skryptu „Zyyy”).
-
Zwroty
-
Promise<object>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
getFontList()
browser.fontSettings.getFontList(): Promise<FontName[]>
Pobiera listę czcionek w systemie.
Zwroty
-
Obietnica<FontName[]>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
getMinimumFontSize()
browser.fontSettings.getMinimumFontSize(
details?: object,
): Promise<object>
Pobiera minimalny rozmiar czcionki.
Parametry
-
szczegóły
object opcjonalny
Ten parametr nie jest obecnie używany.
Zwroty
-
Promise<object>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
setDefaultFixedFontSize()
browser.fontSettings.setDefaultFixedFontSize(
details: object,
): Promise<void>
Ustawia domyślny rozmiar czcionek o stałej szerokości.
Parametry
-
szczegóły
obiekt
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
setDefaultFontSize()
browser.fontSettings.setDefaultFontSize(
details: object,
): Promise<void>
Ustawia domyślny rozmiar czcionki.
Parametry
-
szczegóły
obiekt
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
setFont()
browser.fontSettings.setFont(
details: object,
): Promise<void>
Ustawia czcionkę dla danego skryptu i ogólnej rodziny czcionek.
Parametry
-
szczegóły
obiekt
-
fontId
tekst
Identyfikator czcionki. Pusty ciąg znaków oznacza, że zostanie użyte ustawienie globalne czcionki skryptu.
-
genericFamily
Ogólna rodzina czcionek, dla której należy ustawić czcionkę.
-
pismo
ScriptCode opcjonalny
Kod skryptu, dla którego należy ustawić czcionkę. Jeśli go pominiesz, zostanie ustawione ustawienie czcionki dla skryptu globalnego (kod skryptu „Zyyy”).
-
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
setMinimumFontSize()
browser.fontSettings.setMinimumFontSize(
details: object,
): Promise<void>
Ustawia minimalny rozmiar czcionki.
Parametry
-
szczegóły
obiekt
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
Zwroty
-
thought Promise<void>
Chrome 96 lub nowsza wersja browser.* od Chrome 148
Wydarzenia
onDefaultFixedFontSizeChanged
browser.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Uruchamiane, gdy zmienia się domyślne ustawienie stałego rozmiaru czcionki.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
-
levelOfControl
Poziom kontroli, jaką rozszerzenie ma nad ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
onDefaultFontSizeChanged
browser.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Uruchamiane, gdy zmienia się domyślne ustawienie rozmiaru czcionki.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
-
levelOfControl
Poziom kontroli, jaką rozszerzenie ma nad ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-
onFontChanged
browser.fontSettings.onFontChanged.addListener(
callback: function,
)
Uruchamiane, gdy zmieni się ustawienie czcionki.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
-
fontId
tekst
Identyfikator czcionki. Zobacz opis w:
getFont. -
genericFamily
Ogólna rodzina czcionek, dla której zmieniono ustawienie czcionki.
-
levelOfControl
Poziom kontroli, jaką rozszerzenie ma nad ustawieniem.
-
pismo
ScriptCode opcjonalny
Kod skryptu, dla którego zmieniono ustawienie czcionki.
-
-
onMinimumFontSizeChanged
browser.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Uruchamiane, gdy zmienia się ustawienie minimalnego rozmiaru czcionki.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
-
levelOfControl
Poziom kontroli, jaką rozszerzenie ma nad ustawieniem.
-
pixelSize
liczba
Rozmiar czcionki w pikselach.
-
-