chrome.fontSettings

Deskripsi

Gunakan chrome.fontSettings API untuk mengelola setelan font Chrome.

Izin

fontSettings

Untuk menggunakan Font Settings API, Anda harus menyatakan izin "fontSettings" dalam manifes ekstensi. Contoh:

{   "name": "My Font Settings Extension",   "description": "Customize your fonts",   "version": "0.2",   "permissions": [     "fontSettings"   ],   ... } 

Konsep dan penggunaan

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 di bagian GenericReference. Saat halaman web menentukan jenis font umum, 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".

Jika 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 di bagian ScriptCode. 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, 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 Tampilan

    string

    Nama tampilan font.

  • fontId

    string

    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,
)
: Promise<void>

Menghapus ukuran font tetap default yang ditetapkan oleh ekstensi ini, jika ada.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

Hasil

  • Promise<void>

    Chrome 96+

clearDefaultFontSize()

chrome.fontSettings.clearDefaultFontSize(
  details?: object,
)
: Promise<void>

Menghapus ukuran font default yang ditetapkan oleh ekstensi ini, jika ada.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

Hasil

  • Promise<void>

    Chrome 96+

clearFont()

chrome.fontSettings.clearFont(
  details: object,
)
: Promise<void>

Menghapus set font yang ditetapkan oleh ekstensi ini, jika ada.

Parameter

  • detail

    objek

    • genericFamily

      Jenis font generik yang fontnya harus dihapus.

    • skrip

      ScriptCode opsional

      Skrip yang fontnya harus dihapus. Jika tidak diisi, setelan font skrip global akan dihapus.

Hasil

  • Promise<void>

    Chrome 96+

clearMinimumFontSize()

chrome.fontSettings.clearMinimumFontSize(
  details?: object,
)
: Promise<void>

Menghapus ukuran font minimum yang ditetapkan oleh ekstensi ini, jika ada.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

Hasil

  • Promise<void>

    Chrome 96+

getDefaultFixedFontSize()

chrome.fontSettings.getDefaultFixedFontSize(
  details?: object,
)
: Promise<object>

Mendapatkan ukuran default untuk font lebar tetap.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

Hasil

  • Promise<object>

    Chrome 96+

getDefaultFontSize()

chrome.fontSettings.getDefaultFontSize(
  details?: object,
)
: Promise<object>

Mendapatkan ukuran font default.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

Hasil

  • Promise<object>

    Chrome 96+

getFont()

chrome.fontSettings.getFont(
  details: object,
)
: Promise<object>

Mendapatkan font untuk skrip dan jenis font umum tertentu.

Parameter

  • detail

    objek

    • genericFamily

      Jenis font generik yang font-nya harus diambil.

    • skrip

      ScriptCode opsional

      Skrip yang fontnya harus diambil. Jika tidak disertakan, setelan font untuk skrip global (kode skrip "Zyyy") akan diambil.

Hasil

  • Promise<object>

    Chrome 96+

getFontList()

chrome.fontSettings.getFontList(): Promise<FontName[]>

Mendapatkan daftar font di sistem.

Hasil

getMinimumFontSize()

chrome.fontSettings.getMinimumFontSize(
  details?: object,
)
: Promise<object>

Mendapatkan ukuran font minimum.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

Hasil

  • Promise<object>

    Chrome 96+

setDefaultFixedFontSize()

chrome.fontSettings.setDefaultFixedFontSize(
  details: object,
)
: Promise<void>

Menetapkan ukuran default untuk font lebar tetap.

Parameter

  • detail

    objek

    • pixelSize

      angka

      Ukuran font dalam piksel.

Hasil

  • Promise<void>

    Chrome 96+

setDefaultFontSize()

chrome.fontSettings.setDefaultFontSize(
  details: object,
)
: Promise<void>

Menetapkan ukuran font default.

Parameter

  • detail

    objek

    • pixelSize

      angka

      Ukuran font dalam piksel.

Hasil

  • Promise<void>

    Chrome 96+

setFont()

chrome.fontSettings.setFont(
  details: object,
)
: Promise<void>

Menetapkan font untuk skrip dan jenis font umum tertentu.

Parameter

  • detail

    objek

    • fontId

      string

      ID font. String kosong berarti kembali ke setelan font skrip global.

    • genericFamily

      Jenis font generik yang fontnya harus ditetapkan.

    • skrip

      ScriptCode opsional

      Kode skrip yang harus ditetapkan fontnya. Jika tidak diisi, setelan font untuk skrip global (kode skrip "Zyyy") akan ditetapkan.

Hasil

  • Promise<void>

    Chrome 96+

setMinimumFontSize()

chrome.fontSettings.setMinimumFontSize(
  details: object,
)
: Promise<void>

Menetapkan ukuran font minimum.

Parameter

  • detail

    objek

    • pixelSize

      angka

      Ukuran font dalam piksel.

Hasil

  • Promise<void>

    Chrome 96+

Acara

onDefaultFixedFontSizeChanged

chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
  callback: function,
)

Diaktifkan saat setelan ukuran font tetap default berubah.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (details: object) => void

    • detail

      objek

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • pixelSize

        angka

        Ukuran font dalam piksel.

onDefaultFontSizeChanged

chrome.fontSettings.onDefaultFontSizeChanged.addListener(
  callback: function,
)

Diaktifkan saat setelan ukuran font default berubah.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (details: object) => void

    • detail

      objek

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • pixelSize

        angka

        Ukuran font dalam piksel.

onFontChanged

chrome.fontSettings.onFontChanged.addListener(
  callback: function,
)

Diaktifkan saat setelan font berubah.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (details: object) => void

    • detail

      objek

      • fontId

        string

        ID font. Lihat deskripsi di getFont.

      • genericFamily

        Jenis font generik yang setelan fontnya telah berubah.

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • skrip

        ScriptCode opsional

        Kode skrip yang setelan font-nya telah berubah.

onMinimumFontSizeChanged

chrome.fontSettings.onMinimumFontSizeChanged.addListener(
  callback: function,
)

Diaktifkan saat setelan ukuran font minimum berubah.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (details: object) => void

    • detail

      objek

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • pixelSize

        angka

        Ukuran font dalam piksel.