Deskripsi
Gunakan chrome.fontSettings API untuk mengelola setelan font Chrome.
Izin
fontSettingsManifes
Untuk menggunakan Font Settings API, Anda harus mendeklarasikan izin "fontSettings" di manifes ekstensi. Contoh:
{
  "name": "My Font Settings Extension",
  "description": "Customize your fonts",
  "version": "0.2",
  "permissions": [
    "fontSettings"
  ],
  ...
}
Jenis Font dan Skrip Generik
Chrome memungkinkan beberapa setelan font bergantung pada jenis font generik dan skrip bahasa tertentu. Misalnya, font yang digunakan untuk bahasa China Sederhana sans-serif mungkin berbeda dengan font yang digunakan untuk bahasa Jepang serif.
Jenis font generik yang didukung oleh Chrome didasarkan pada jenis font generik CSS dan tercantum dalam referensi API di bawah. Saat halaman web menentukan jenis font generik, Chrome akan memilih font berdasarkan setelan yang sesuai. Jika tidak ada jenis font generik yang ditentukan, Chrome akan menggunakan setelan untuk jenis font generik "standar".
Saat halaman web menentukan bahasa, Chrome akan memilih font berdasarkan setelan untuk skrip bahasa yang sesuai. Jika tidak ada bahasa yang ditentukan, Chrome akan menggunakan setelan untuk skrip default, atau global.
Skrip bahasa yang didukung ditentukan oleh kode skrip ISO 15924 dan tercantum dalam referensi API di bawah. Secara teknis, setelan Chrome tidak sepenuhnya per-skrip, tetapi juga bergantung pada bahasa. Misalnya, Chrome memilih font untuk Sirilik (kode skrip ISO 15924 "Cyrl") saat halaman web menentukan bahasa Rusia, dan menggunakan font ini tidak hanya untuk skrip Sirilik, tetapi juga untuk semua yang dicakup font tersebut, seperti Latin.
Contoh
Kode berikut mendapatkan font standar untuk bahasa Arab.
chrome.fontSettings.getFont(
  { genericFamily: 'standard', script: 'Arab' },
  function(details) { console.log(details.fontId); }
);
Cuplikan berikutnya menetapkan font sans-serif untuk bahasa Jepang.
chrome.fontSettings.setFont(
  { genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Untuk mencoba API ini, instal contoh API fontSettings dari repositori chrome-extension-samples.
Jenis
FontName
Mewakili nama font.
Properti
- 
    Nama Tampilanstring Nama tampilan font. 
- 
    fontIdstring ID font. 
GenericFamily
Jenis font generik CSS.
Enum
"standard" 
 
"sansserif" 
 
"serif" 
 
"fixed" 
 
"cursive" 
 
"fantasi" 
 
"math" 
 
LevelOfControl
Salah satu dari
not\_controllable: tidak dapat dikontrol oleh ekstensi apa pun
controlled\_by\_other\_extensions: dikontrol oleh ekstensi dengan prioritas lebih tinggi
controllable\_by\_this\_extension: dapat dikontrol oleh ekstensi ini
controlled\_by\_this\_extension: dikontrol oleh ekstensi ini
Enum
"not_controllable" 
 
"controlled_by_other_extensions" 
 
"controllable_by_this_extension" 
 
"controlled_by_this_extension" 
 
ScriptCode
Kode skrip ISO 15924. Skrip default, atau global, diwakili oleh kode skrip "Zyyy".
Enum
"Afak" 
 
"Arab" 
 
"Armi" 
 
"Armn" 
 
"Avst" 
 
"Bali" 
 
"Bamu" 
 
"Bass" 
 
"Batk" 
 
"Beng" 
 
"Blis" 
 
"Bopo" 
 
"Brah" 
 
"Brai" 
 
"Bugi" 
 
"Buhd" 
 
"Cakm" 
 
"Cans" 
 
"Cari" 
 
"Cham" 
 
"Cher" 
 
"Cirt" 
 
"Koptik" 
 
"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" 
 
"Thai" 
 
"Tibt" 
 
"Tirh" 
 
"Ugar" 
 
"Vaii" 
 
"Visp" 
 
"Wara" 
 
"Wole" 
 
"Xpeo" 
 
"Xsux" 
 
"Yiii" 
 
"Zmth" 
 
"Zsym" 
 
"Zyyy" 
 
Metode
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
): Promise<void>
Menghapus ukuran font tetap default yang ditetapkan oleh ekstensi ini, jika ada.
Parameter
- 
    detailobjek opsional Parameter ini saat ini tidak digunakan. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
): Promise<void>
Menghapus ukuran font default yang ditetapkan oleh ekstensi ini, jika ada.
Parameter
- 
    detailobjek opsional Parameter ini saat ini tidak digunakan. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
): Promise<void>
Menghapus set font yang ditetapkan oleh ekstensi ini, jika ada.
Parameter
- 
    detailobjek - 
    genericFamilyJenis font generik yang fontnya harus dihapus. 
- 
    skripScriptCode opsional Skrip yang fontnya harus dihapus. Jika tidak diisi, setelan font skrip global akan dihapus. 
 
- 
    
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
): Promise<void>
Menghapus ukuran font minimum yang ditetapkan oleh ekstensi ini, jika ada.
Parameter
- 
    detailobjek opsional Parameter ini saat ini tidak digunakan. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
): Promise<object>
Mendapatkan ukuran default untuk font lebar tetap.
Parameter
- 
    detailobjek opsional Parameter ini saat ini tidak digunakan. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
- 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
 
- 
    
Hasil
- 
            Promise<object> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
): Promise<object>
Mendapatkan ukuran font default.
Parameter
- 
    detailobjek opsional Parameter ini saat ini tidak digunakan. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
- 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
 
- 
    
Hasil
- 
            Promise<object> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
): Promise<object>
Mendapatkan font untuk skrip dan jenis font umum tertentu.
Parameter
- 
    detailobjek - 
    genericFamilyJenis font generik yang font-nya harus diambil. 
- 
    skripScriptCode opsional Skrip yang fontnya harus diambil. Jika tidak disertakan, setelan font untuk skrip global (kode skrip "Zyyy") akan diambil. 
 
- 
    
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    fontIdstring ID font. Daripada nilai preferensi ID font literal, ini mungkin merupakan ID font yang diselesaikan sistem ke nilai preferensi. Jadi, fontIddapat berbeda dari font yang diteruskan kesetFont, jika, misalnya, font tidak tersedia di sistem. String kosong menandakan penggantian ke setelan font skrip global.
- 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
 
- 
    
 
- 
    
Hasil
- 
            Promise<object> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
): Promise<FontName[]>
Mendapatkan daftar font di sistem.
Parameter
Hasil
- 
            Promise<FontName[]> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
): Promise<object>
Mendapatkan ukuran font minimum.
Parameter
- 
    detailobjek opsional Parameter ini saat ini tidak digunakan. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
- 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
 
- 
    
Hasil
- 
            Promise<object> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
callback?: function,
): Promise<void>
Menetapkan ukuran default untuk font lebar tetap.
Parameter
- 
    detailobjek - 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
): Promise<void>
Menetapkan ukuran font default.
Parameter
- 
    detailobjek - 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
): Promise<void>
Menetapkan font untuk skrip dan jenis font umum tertentu.
Parameter
- 
    detailobjek - 
    fontIdstring ID font. String kosong berarti kembali ke setelan font skrip global. 
- 
    genericFamilyJenis font generik yang fontnya harus ditetapkan. 
- 
    skripScriptCode opsional Kode skrip yang harus ditetapkan fontnya. Jika tidak diisi, setelan font untuk skrip global (kode skrip "Zyyy") akan ditetapkan. 
 
- 
    
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
callback?: function,
): Promise<void>
Menetapkan ukuran font minimum.
Parameter
- 
    detailobjek - 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 96+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
Acara
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Diaktifkan saat setelan ukuran font tetap default berubah.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
- 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
 
- 
    
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Diaktifkan saat setelan ukuran font default berubah.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
- 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
 
- 
    
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Diaktifkan saat setelan font berubah.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    fontIdstring ID font. Lihat deskripsi di getFont.
- 
    genericFamilyJenis font generik yang setelan fontnya telah berubah. 
- 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
- 
    skripScriptCode opsional Kode skrip yang setelan font-nya telah berubah. 
 
- 
    
 
- 
    
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Diaktifkan saat setelan ukuran font minimum berubah.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    levelOfControlTingkat kontrol yang dimiliki ekstensi ini atas setelan. 
- 
    pixelSizeangka Ukuran font dalam piksel. 
 
- 
    
 
-