Açıklama
Chrome'un yazı tipi ayarlarını yönetmek için chrome.fontSettings
API'yi kullanın.
İzinler
fontSettings
Font Settings API'yi kullanmak için "fontSettings"
iznini uzantı manifestinde belirtmeniz gerekir. Örneğin:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
Kavramlar ve kullanım
Chrome, bazı yazı tipi ayarlarının belirli genel yazı tipi ailelerine ve dil komut dosyalarına bağlı olmasına izin verir. Örneğin, sans-serif Basitleştirilmiş Çince için kullanılan yazı tipi, serif Japonca için kullanılan yazı tipinden farklı olabilir.
Chrome tarafından desteklenen genel yazı tipi aileleri, CSS genel yazı tipi ailelerine dayanır ve GenericReference
altında listelenir. Bir web sayfası genel bir yazı tipi ailesi belirttiğinde Chrome, ilgili ayara göre yazı tipini seçer. Genel yazı tipi ailesi belirtilmezse Chrome, "standart" genel yazı tipi ailesi için ayarı kullanır.
Bir web sayfası dil belirttiğinde Chrome, ilgili dil komut dosyasının ayarına göre yazı tipini seçer. Dil belirtilmezse Chrome, varsayılan veya genel komut dosyası ayarını kullanır.
Desteklenen dil alfabeleri ISO 15924 alfabe koduyla belirtilir ve ScriptCode
altında listelenir. Teknik olarak, Chrome ayarları tamamen komut dosyasına özel değildir. Aynı zamanda dile de bağlıdır. Örneğin, bir web sayfası Rusça dilini belirttiğinde Chrome, Kiril alfabesi için yazı tipi seçer (ISO 15924 alfabe kodu "Cyrl") ve bu yazı tipini yalnızca Kiril alfabesi için değil, yazı tipinin kapsadığı her şey için (ör. Latin) kullanır.
Örnekler
Aşağıdaki kod, Arapça için standart yazı tipini alır.
chrome.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
Aşağıdaki snippet, Japonca için sans-serif yazı tipini ayarlar.
chrome.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Bu API'yi denemek için chrome-extension-samples deposundan fontSettings API örneğini yükleyin.
Türler
FontName
Yazı tipi adını gösterir.
Özellikler
-
görünen ad
dize
Yazı tipinin görünen adı.
-
fontId
dize
Yazı tipi kimliği.
GenericFamily
CSS genel yazı tipi ailesi.
Enum
"standard"
"sansserif"
"serif"
"fixed"
"cursive"
"fantasy"
"math"
LevelOfControl
Bir uzantı
not\_controllable
: hiçbir uzantı tarafından kontrol edilemez
controlled\_by\_other\_extensions
: daha yüksek önceliğe sahip uzantılar tarafından kontrol edilir
controllable\_by\_this\_extension
: bu uzantı tarafından kontrol edilebilir
controlled\_by\_this\_extension
: bu uzantı tarafından kontrol edilir
Enum
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"
ScriptCode
ISO 15924 alfabesi kodu. Varsayılan veya genel komut dosyası, "Zyyy" komut dosyası koduyla gösterilir.
Enum
"Afak"
"Arab"
"Armi"
"Armn"
"Avst"
"Bali"
"Bamu"
"Bass"
"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"
"Ay"
"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"
"Tayca"
"Tibt"
"Tirh"
"Ugar"
"Vaii"
"Visp"
"Wara"
"Wole"
"Xpeo"
"Xsux"
"Yiii"
"Zmth"
"Zsym"
"Zyyy"
Yöntemler
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
): Promise<void>
Bu uzantı tarafından ayarlanan varsayılan sabit yazı tipi boyutunu (varsa) temizler.
Parametreler
-
ayrıntılar
object isteğe bağlı
Bu parametre şu anda kullanılmamaktadır.
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
): Promise<void>
Bu uzantı tarafından ayarlanan varsayılan yazı tipi boyutunu (varsa) temizler.
Parametreler
-
ayrıntılar
object isteğe bağlı
Bu parametre şu anda kullanılmamaktadır.
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
clearFont()
chrome.fontSettings.clearFont(
details: object,
): Promise<void>
Bu uzantı tarafından ayarlanan yazı tipini (varsa) temizler.
Parametreler
-
ayrıntılar
nesne
-
genericFamily
Yazı tipinin temizlenmesi gereken genel yazı tipi ailesi.
-
alfabe
ScriptCode isteğe bağlı
Yazı tipinin temizlenmesi gereken komut dosyası. Belirtilmezse genel komut dosyası yazı tipi ayarı temizlenir.
-
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
): Promise<void>
Bu uzantı tarafından belirlenen minimum yazı tipi boyutunu (varsa) temizler.
Parametreler
-
ayrıntılar
object isteğe bağlı
Bu parametre şu anda kullanılmamaktadır.
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
): Promise<object>
Sabit genişlikli yazı tiplerinin varsayılan boyutunu alır.
Parametreler
-
ayrıntılar
object isteğe bağlı
Bu parametre şu anda kullanılmamaktadır.
İadeler
-
Promise<object>
Chrome 96 veya daha yeni bir sürüm
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
): Promise<object>
Varsayılan yazı tipi boyutunu alır.
Parametreler
-
ayrıntılar
object isteğe bağlı
Bu parametre şu anda kullanılmamaktadır.
İadeler
-
Promise<object>
Chrome 96 veya daha yeni bir sürüm
getFont()
chrome.fontSettings.getFont(
details: object,
): Promise<object>
Belirli bir komut dosyası ve genel yazı tipi ailesi için yazı tipini alır.
Parametreler
-
ayrıntılar
nesne
-
genericFamily
Yazı tipinin alınması gereken genel yazı tipi ailesi.
-
alfabe
ScriptCode isteğe bağlı
Yazı tipinin alınması gereken komut dosyası. Atlanırsa genel komut dosyası (komut dosyası kodu "Zyyy") için yazı tipi ayarı alınır.
-
İadeler
-
Promise<object>
Chrome 96 veya daha yeni bir sürüm
getFontList()
chrome.fontSettings.getFontList(): Promise<FontName[]>
Sistemdeki yazı tiplerinin listesini alır.
İadeler
-
Promise<FontName[]>
Chrome 96 veya daha yeni bir sürüm
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
): Promise<object>
Minimum yazı tipi boyutunu alır.
Parametreler
-
ayrıntılar
object isteğe bağlı
Bu parametre şu anda kullanılmamaktadır.
İadeler
-
Promise<object>
Chrome 96 veya daha yeni bir sürüm
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
): Promise<void>
Sabit genişlikli yazı tipleri için varsayılan boyutu ayarlar.
Parametreler
-
ayrıntılar
nesne
-
pixelSize
sayı
Piksel cinsinden yazı tipi boyutu.
-
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
): Promise<void>
Varsayılan yazı tipi boyutunu ayarlar.
Parametreler
-
ayrıntılar
nesne
-
pixelSize
sayı
Piksel cinsinden yazı tipi boyutu.
-
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
setFont()
chrome.fontSettings.setFont(
details: object,
): Promise<void>
Belirli bir komut dosyası ve genel yazı tipi ailesi için yazı tipini ayarlar.
Parametreler
-
ayrıntılar
nesne
-
fontId
dize
Yazı tipi kimliği. Boş dize, genel komut dosyası yazı tipi ayarına geri dönmek anlamına gelir.
-
genericFamily
Yazı tipinin ayarlanması gereken genel yazı tipi ailesi.
-
alfabe
ScriptCode isteğe bağlı
Yazı tipinin ayarlanması gereken komut dosyası kodu. Atlanırsa genel komut dosyası (komut dosyası kodu "Zyyy") için yazı tipi ayarı belirlenir.
-
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
): Promise<void>
Minimum yazı tipi boyutunu ayarlar.
Parametreler
-
ayrıntılar
nesne
-
pixelSize
sayı
Piksel cinsinden yazı tipi boyutu.
-
İadeler
-
Promise<void>
Chrome 96 veya daha yeni bir sürüm
Etkinlikler
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Varsayılan sabit yazı tipi boyutu ayarı değiştiğinde tetiklenir.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
levelOfControl
Bu uzantının ayar üzerinde sahip olduğu kontrol düzeyi.
-
pixelSize
sayı
Piksel cinsinden yazı tipi boyutu.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Varsayılan yazı tipi boyutu ayarı değiştiğinde tetiklenir.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
levelOfControl
Bu uzantının ayar üzerinde sahip olduğu kontrol düzeyi.
-
pixelSize
sayı
Piksel cinsinden yazı tipi boyutu.
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Yazı tipi ayarı değiştiğinde tetiklenir.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
fontId
dize
Yazı tipi kimliği. Açıklamayı
getFont
bölümünde bulabilirsiniz. -
genericFamily
Yazı tipi ayarının değiştirildiği genel yazı tipi ailesi.
-
levelOfControl
Bu uzantının ayar üzerinde sahip olduğu kontrol düzeyi.
-
alfabe
ScriptCode isteğe bağlı
Yazı tipi ayarının değiştirildiği komut dosyası kodu.
-
-
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Minimum yazı tipi boyutu ayarı değiştiğinde tetiklenir.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
levelOfControl
Bu uzantının ayar üzerinde sahip olduğu kontrol düzeyi.
-
pixelSize
sayı
Piksel cinsinden yazı tipi boyutu.
-
-