chrome.fontSettings

Deskripsi

Gunakan chrome.fontSettings API untuk mengelola setelan font Chrome.

Izin

fontSettings

Untuk menggunakan Font Settings API, Anda harus mendeklarasikan 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 dan skrip bahasa umum tertentu. Misalnya, font yang digunakan untuk Sans-serif China Aksara Sederhana mungkin berbeda dengan font yang digunakan untuk bahasa Jepang serif.

Jenis font umum yang didukung oleh Chrome didasarkan pada jenis font umum CSS dan dicantumkan dalam GenericReference. Saat halaman web menentukan jenis font generik, Chrome akan memilih font berdasarkan setelan yang sesuai. Jika jenis font umum tidak ditentukan, Chrome akan menggunakan setelan untuk jenis font umum "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 dicantumkan di ScriptCode. Secara teknis, setelan Chrome tidak semata-mata 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 sampul 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 fontSettings API dari repositori chrome-extension-samples.

Jenis

FontName

Menampilkan nama font.

Properti

  • displayName

    string

    Nama tampilan font.

  • fontId

    string

    ID font.

GenericFamily

Jenis font umum CSS.

Enum

"sansserif"

"serif"

LevelOfControl

Salah satu dari not\_controllable: tidak dapat dikontrol oleh ekstensi mana 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"

"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"

"Cakm"

"Cari"

"Cham"

"Cprt"

"Cyrl"

"Deva"

"Dsrt"

"Dupl"

"Elba"

"Geor"

"Geok"

"Glag"

"Grek"

"Gujr"

"Guru"

"Hang"

"Hani"

"Hano"

"Hans"

"Hant"

"Hluw"

"Hmng"

"Hung"

"Java"

"Jpan"

"Jurc"

"Kali"

"Khar"

"Khmr"

"Khoj"

"Knda"

"Kpel"

"Kthi"

"Lana"

"Laoo"

"Latf"

"Latg"

"Latn"

"Lepc"

"Limb"

"Lina"

"Linb"

"Loma"

"Lyci"

"Lydi"

"Mand"

"Mani"

"Maya"

"Mend"

"Merc"

"Mero"

"Mlym"

"Mong"

"Mroo"

"Mtei"

"Mymr"

"Narb"

"Nbat"

"Nkgb"

"Nkoo"

"Nshu"

"Ogam"

"Olck"

"Orkh"

"Orya"

"Osma"

"Perm"

"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"

"Takr"

"Talu"

"Taml"

"Tang"

"Tavt"

"Telu"

"Teng"

"Tfng"

"Tglg"

"Tibt"

"Tirh"

"Ugar"

"Vaii"

"Visp"

"Wara"

"Wole"

"Xpeo"

"Xsux"

"Zmth"

"Zsym"

"Zyyy"

Metode

clearDefaultFixedFontSize()

Promise
chrome.fontSettings.clearDefaultFixedFontSize(
  details?: object,
  callback?: function,
)

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

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

clearDefaultFontSize()

Promise
chrome.fontSettings.clearDefaultFontSize(
  details?: object,
  callback?: function,
)

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

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

clearFont()

Promise
chrome.fontSettings.clearFont(
  details: object,
  callback?: function,
)

Menghapus font yang ditetapkan oleh ekstensi ini, jika ada.

Parameter

  • detail

    objek

    • genericFamily

      Jenis font generik yang font-nya harus dihapus.

    • skrip

      ScriptCode opsional

      Skrip yang font-nya harus dihapus. Jika dihilangkan, setelan font skrip global akan dihapus.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

clearMinimumFontSize()

Promise
chrome.fontSettings.clearMinimumFontSize(
  details?: object,
  callback?: function,
)

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

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getDefaultFixedFontSize()

Promise
chrome.fontSettings.getDefaultFixedFontSize(
  details?: object,
  callback?: function,
)

Mendapatkan ukuran default untuk font dengan lebar tetap.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (details: object)=>void

    • detail

      objek

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • pixelSize

        angka

        Ukuran font dalam piksel.

Hasil

  • Promise<object>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getDefaultFontSize()

Promise
chrome.fontSettings.getDefaultFontSize(
  details?: object,
  callback?: function,
)

Mendapatkan ukuran font default.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (details: object)=>void

    • detail

      objek

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • pixelSize

        angka

        Ukuran font dalam piksel.

Hasil

  • Promise<object>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getFont()

Promise
chrome.fontSettings.getFont(
  details: object,
  callback?: function,
)

Mendapatkan font untuk skrip tertentu dan jenis font umum.

Parameter

  • detail

    objek

    • genericFamily

      Jenis font generik yang font-nya akan diambil.

    • skrip

      ScriptCode opsional

      Skrip untuk font yang akan diambil. Jika dihilangkan, setelan font untuk skrip global (kode skrip "Zyyy") diambil.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (details: object)=>void

    • detail

      objek

      • fontId

        string

        ID font. Bukan nilai preferensi ID font literal, ini mungkin ID font yang di-resolve sistem nilai preferensi. Jadi, fontId dapat berbeda dari font yang diteruskan ke setFont, jika, misalnya, font tidak tersedia di sistem. String kosong menandakan penggantian ke setelan font skrip global.

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

Hasil

  • Promise<object>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getFontList()

Promise
chrome.fontSettings.getFontList(
  callback?: function,
)

Mendapatkan daftar font pada sistem.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (results: FontName[])=>void

Hasil

  • Promise<FontName[]>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getMinimumFontSize()

Promise
chrome.fontSettings.getMinimumFontSize(
  details?: object,
  callback?: function,
)

Mendapatkan ukuran font minimum.

Parameter

  • detail

    objek opsional

    Parameter ini saat ini tidak digunakan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (details: object)=>void

    • detail

      objek

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • pixelSize

        angka

        Ukuran font dalam piksel.

Hasil

  • Promise<object>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setDefaultFixedFontSize()

Promise
chrome.fontSettings.setDefaultFixedFontSize(
  details: object,
  callback?: function,
)

Menetapkan ukuran default untuk font dengan lebar tetap.

Parameter

  • detail

    objek

    • pixelSize

      angka

      Ukuran font dalam piksel.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setDefaultFontSize()

Promise
chrome.fontSettings.setDefaultFontSize(
  details: object,
  callback?: function,
)

Menetapkan ukuran font default.

Parameter

  • detail

    objek

    • pixelSize

      angka

      Ukuran font dalam piksel.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setFont()

Promise
chrome.fontSettings.setFont(
  details: object,
  callback?: function,
)

Menetapkan font untuk skrip tertentu dan jenis font generik.

Parameter

  • detail

    objek

    • fontId

      string

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

    • genericFamily

      Jenis font generik yang font-nya harus ditetapkan.

    • skrip

      ScriptCode opsional

      Kode skrip yang font-nya harus disetel. Jika dihilangkan, setelan font untuk skrip global (kode skrip "Zyyy") akan ditetapkan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setMinimumFontSize()

Promise
chrome.fontSettings.setMinimumFontSize(
  details: object,
  callback?: function,
)

Menetapkan ukuran font minimum.

Parameter

  • detail

    objek

    • pixelSize

      angka

      Ukuran font dalam piksel.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 96 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

Peristiwa

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 deskripsinya dalam bahasa getFont.

      • genericFamily

        Jenis font umum yang setelan fontnya telah diubah.

      • levelOfControl

        Tingkat kontrol yang dimiliki ekstensi ini atas setelan.

      • skrip

        ScriptCode opsional

        Kode skrip yang setelan fontnya telah diubah.

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.