Beschrijving
Gebruik de chrome.fontSettings API om de lettertype-instellingen van Chrome te beheren.
Rechten
fontSettingsAls je de Font Settings API wilt gebruiken, moet je het recht "fontSettings" definiëren in het extensiemanifest. Voorbeeld:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
Concepten en gebruik
Chrome staat toe dat sommige lettertype-instellingen afhankelijk zijn van bepaalde algemene lettertypefamilies en taalscripts. Het lettertype dat wordt gebruikt voor schreefloos Vereenvoudigd Chinees kan bijvoorbeeld verschillen van het lettertype dat wordt gebruikt voor Japans met schreef.
De algemene lettertypefamilies die door Chrome worden ondersteund, zijn gebaseerd op algemene CSS-lettertypefamilies en staan vermeld onder GenericReference. Als een webpagina een algemene lettertypefamilie specificeert, selecteert Chrome het lettertype op basis van de bijbehorende instelling. Als er geen algemene lettertypefamilie is opgegeven, gebruikt Chrome de instelling voor de algemene lettertypefamilie 'standard'.
Als een webpagina een taal specificeert, selecteert Chrome het lettertype op basis van de instelling voor het bijbehorende taalscript. Als er geen taal is opgegeven, gebruikt Chrome de instelling voor het standaard- of algemene script.
De ondersteunde taalscripts worden aangegeven door de ISO 15924-scriptcode en staan vermeld onder ScriptCode. Technisch gezien zijn de Chrome-instellingen niet strikt per script, maar zijn ze ook afhankelijk van de taal. Chrome kiest bijvoorbeeld het lettertype voor Cyrillisch (ISO 15924-scriptcode 'Cyrl') als een webpagina de Russische taal specificeert. Chrome gebruikt dit lettertype niet alleen voor Cyrillisch schrift, maar voor alles wat het lettertype omvat, zoals Latijn.
Voorbeelden
Met de volgende code wordt het standaardlettertype voor Arabisch opgehaald.
browser.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
Het volgende fragment stelt het schreefloze lettertype in voor Japans.
browser.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Als je deze API wilt proberen, installeer je het voorbeeld van de fontSettings API uit de repository chrome-extension-samples.
Typen
FontName
Staat voor een lettertypenaam.
Eigenschappen
-
displayName
tekenreeks
De weergavenaam van het lettertype.
-
fontId
tekenreeks
De lettertype-ID.
GenericFamily
Een algemene CSS-lettertypefamilie.
Enum
"standard"
"sansserif"
"serif"
"fixed"
"cursive"
"fantasy"
"math"
LevelOfControl
Een van de volgende:
not\_controllable: kan niet worden beheerd door een extensie
controlled\_by\_other\_extensions: beheerd door extensies met een hogere prioriteit
controllable\_by\_this\_extension: kan worden beheerd door deze extensie
controlled\_by\_this\_extension: beheerd door deze extensie
Enum
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"
ScriptCode
Een ISO 15924-scriptcode. Het standaard- of algemene script wordt vertegenwoordigd door de scriptcode Zyyy.
Enum
Afak
Arabisch
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
Moon
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
Thais
Tibt
Tirh
Ugar
Vaii
Visp
Wara
Wole
Xpeo
"Xsux"
"Yiii"
Zmth
"Zsym"
"Zyyy"
Methoden
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
): Promise<void>
Wist de standaard vaste lettergrootte die door deze extensie is ingesteld, indien van toepassing.
Parameters
-
details
object optioneel
Deze parameter wordt op dit moment niet gebruikt.
Retourzendingen
-
Promise<void>
Chrome 96+
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
): Promise<void>
Wist de standaard lettergrootte die door deze extensie is ingesteld, indien van toepassing.
Parameters
-
details
object optioneel
Deze parameter wordt op dit moment niet gebruikt.
Retourzendingen
-
Promise<void>
Chrome 96+
clearFont()
chrome.fontSettings.clearFont(
details: object,
): Promise<void>
Wist het lettertype dat door deze extensie is ingesteld, als dat er is.
Parameters
-
details
object
-
genericFamily
De algemene lettertypefamilie waarvoor het lettertype moet worden gewist.
-
script
ScriptCode optioneel
Het script waarvoor het lettertype moet worden gewist. Als je dit weglaat, wordt de algemene instelling voor het scriptlettertype gewist.
-
Retourzendingen
-
Promise<void>
Chrome 96+
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
): Promise<void>
Wist de minimale lettergrootte die door deze extensie is ingesteld, indien van toepassing.
Parameters
-
details
object optioneel
Deze parameter wordt op dit moment niet gebruikt.
Retourzendingen
-
Promise<void>
Chrome 96+
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
): Promise<object>
Haalt de standaardgrootte voor lettertypen met vaste breedte op.
Parameters
-
details
object optioneel
Deze parameter wordt op dit moment niet gebruikt.
Retourzendingen
-
Promise<object>
Chrome 96+
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
): Promise<object>
Haalt de standaard lettergrootte op.
Parameters
-
details
object optioneel
Deze parameter wordt op dit moment niet gebruikt.
Retourzendingen
-
Promise<object>
Chrome 96+
getFont()
chrome.fontSettings.getFont(
details: object,
): Promise<object>
Haalt het lettertype op voor een bepaald script en een algemene lettertypefamilie.
Parameters
-
details
object
-
genericFamily
De algemene lettertypefamilie waarvoor het lettertype moet worden opgehaald.
-
script
ScriptCode optioneel
Het script waarvoor het lettertype moet worden opgehaald. Als je dit weglaat, wordt de lettertype-instelling voor het algemene script (scriptcode Zyyy) opgehaald.
-
Retourzendingen
-
Promise<object>
Chrome 96+
getFontList()
chrome.fontSettings.getFontList(): Promise<FontName[]>
Haalt een lijst met lettertypen op het systeem op.
Retourzendingen
-
Promise<FontName[]>
Chrome 96+
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
): Promise<object>
Haalt de minimale lettergrootte op.
Parameters
-
details
object optioneel
Deze parameter wordt op dit moment niet gebruikt.
Retourzendingen
-
Promise<object>
Chrome 96+
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
): Promise<void>
Hiermee stel je de standaardgrootte in voor lettertypen met een vaste breedte.
Parameters
-
details
object
-
pixelSize
getal
De lettergrootte in pixels.
-
Retourzendingen
-
Promise<void>
Chrome 96+
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
): Promise<void>
Hiermee stelt u de standaard lettergrootte in.
Parameters
-
details
object
-
pixelSize
getal
De lettergrootte in pixels.
-
Retourzendingen
-
Promise<void>
Chrome 96+
setFont()
chrome.fontSettings.setFont(
details: object,
): Promise<void>
Stelt het lettertype in voor een bepaald script en een algemene lettertypefamilie.
Parameters
-
details
object
-
fontId
tekenreeks
De lettertype-ID. De lege tekenreeks betekent dat wordt teruggevallen op de algemene instelling voor het scriptlettertype.
-
genericFamily
De algemene lettertypefamilie waarvoor het lettertype moet worden ingesteld.
-
script
ScriptCode optioneel
De scriptcode waarvoor het lettertype moet worden ingesteld. Als je dit weglaat, wordt de lettertype-instelling voor het algemene script (scriptcode Zyyy) ingesteld.
-
Retourzendingen
-
Promise<void>
Chrome 96+
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
): Promise<void>
Hiermee stelt u de minimale lettergrootte in.
Parameters
-
details
object
-
pixelSize
getal
De lettergrootte in pixels.
-
Retourzendingen
-
Promise<void>
Chrome 96+
Evenementen
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Wordt geactiveerd als de standaardinstelling voor de vaste lettergrootte wordt gewijzigd.
Parameters
-
callback
functie
De parameter
callbackziet er zo uit:(details: object) => void
-
details
object
-
levelOfControl
Het niveau van controle dat deze extensie heeft over de instelling.
-
pixelSize
getal
De lettergrootte in pixels.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Wordt geactiveerd als de standaardinstelling voor de lettergrootte wordt gewijzigd.
Parameters
-
callback
functie
De parameter
callbackziet er zo uit:(details: object) => void
-
details
object
-
levelOfControl
Het niveau van controle dat deze extensie heeft over de instelling.
-
pixelSize
getal
De lettergrootte in pixels.
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Wordt geactiveerd als een lettertype-instelling verandert.
Parameters
-
callback
functie
De parameter
callbackziet er zo uit:(details: object) => void
-
details
object
-
fontId
tekenreeks
De lettertype-ID. Bekijk de beschrijving in het
getFont. -
genericFamily
De algemene lettertypefamilie waarvoor de lettertype-instelling is gewijzigd.
-
levelOfControl
Het niveau van controle dat deze extensie heeft over de instelling.
-
script
ScriptCode optioneel
De scriptcode waarvoor de lettertype-instelling is gewijzigd.
-
-
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Wordt geactiveerd als de instelling voor de minimale lettergrootte wordt gewijzigd.
Parameters
-
callback
functie
De parameter
callbackziet er zo uit:(details: object) => void
-
details
object
-
levelOfControl
Het niveau van controle dat deze extensie heeft over de instelling.
-
pixelSize
getal
De lettergrootte in pixels.
-
-