browser.fontSettings

Descripción

Usa la API de chrome.fontSettings para administrar la configuración de fuentes de Chrome.

Permisos

fontSettings

Para usar la API de Font Settings, debes declarar el permiso "fontSettings" en el manifiesto de la extensión. Por ejemplo:

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

Conceptos y uso

Chrome permite que algunos parámetros de configuración de fuentes dependan de ciertas familias de fuentes genéricas y de las escrituras de idiomas. Por ejemplo, la fuente que se usa para el chino simplificado sans-serif puede ser diferente de la que se usa para el japonés serif.

Las familias de fuentes genéricas que admite Chrome se basan en las familias de fuentes genéricas de CSS y se enumeran en GenericReference. Cuando una página web especifica una familia de fuentes genérica, Chrome selecciona la fuente según el parámetro de configuración correspondiente. Si no se especifica una familia de fuentes genérica, Chrome usa el parámetro de configuración de la familia de fuentes genérica "estándar".

Cuando una página web especifica un idioma, Chrome selecciona la fuente según el parámetro de configuración de la escritura del idioma correspondiente. Si no se especifica ningún idioma, Chrome usa el parámetro de configuración para la secuencia de comandos predeterminada o global.

Las escrituras de idiomas admitidas se especifican con el código de escritura ISO 15924 y se indican en ScriptCode. Técnicamente, la configuración de Chrome no es estrictamente por escritura, sino que también depende del idioma. Por ejemplo, Chrome elige la fuente para cirílico (código de escritura ISO 15924 "Cyrl") cuando una página web especifica el idioma ruso y usa esta fuente no solo para la escritura cirílica, sino también para todo lo que abarca la fuente, como el latín.

Ejemplos

El siguiente código obtiene la fuente estándar para el árabe.

browser.fontSettings.getFont(
  { genericFamily: 'standard', script: 'Arab' },
  function(details) { console.log(details.fontId); }
);

En el siguiente fragmento, se establece la fuente sans-serif para el japonés.

browser.fontSettings.setFont(
  { genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);

Para probar esta API, instala el ejemplo de la API de fontSettings desde el repositorio chrome-extension-samples.

Tipos

FontName

Representa el nombre de una fuente.

Propiedades

  • displayName

    string

    Es el nombre visible de la fuente.

  • fontId

    string

    Es el ID de la fuente.

GenericFamily

Es una familia de fuentes genérica de CSS.

Enum

"standard"

"sansserif"

"serif"

"fixed"

"cursive"

"fantasy"

"math"

LevelOfControl

Uno de los siguientes valores: not\_controllable: ninguna extensión puede controlar este parámetro de configuración. controlled\_by\_other\_extensions: las extensiones con mayor prioridad controlan este parámetro de configuración. controllable\_by\_this\_extension: esta extensión puede controlar este parámetro de configuración. controlled\_by\_this\_extension: esta extensión controla este parámetro de configuración.

Enum

"not_controllable"

"controlled_by_other_extensions"

"controllable_by_this_extension"

"controlled_by_this_extension"

ScriptCode

Es un código de escritura ISO 15924. La secuencia de comandos predeterminada o global se representa con el código de secuencia de comandos "Zyyy".

Enum

"Afak"

"Árabe"

"Aran"

"Armi"

"Armn"

"Avst"

"Bali"

"Bamu"

"Bass"

"Batk"

"Beng"

"Blis"

"Bopo"

"Brah"

"Brai"

"Bugi"

"Buhd"

"Cakm"

"Latas"

"Cari"

"Cham"

"Cher"

"Cirt"

"Copt"

"Cprt"

"Cyrl"

"Cyrs"

"Deva"

"Dsrt"

"Dupl"

"Egyd"

"Egyh"

"Egyp"

"Elba"

"Ethi"

"Geor"

"Geok"

"Glag"

"Goth"

"Gran"

"Grek"

"Gujr"

"Gurú"

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

"Tailandés"

"Tibt"

"Tirh"

"Ugar"

"Vaii"

"Visp"

"Wara"

"Wole"

"Xpeo"

"Xsux"

"Yiii"

"Zmth"

"Zsym"

"Zyyy"

Métodos

clearDefaultFixedFontSize()

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

Borra el tamaño de fuente fijo predeterminado que establece esta extensión, si lo hay.

Parámetros

  • detalles

    objeto opcional

    Este parámetro no se utiliza actualmente.

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

clearDefaultFontSize()

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

Borra el tamaño de fuente predeterminado que estableció esta extensión, si lo hay.

Parámetros

  • detalles

    objeto opcional

    Este parámetro no se utiliza actualmente.

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

clearFont()

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

Borra la fuente establecida por esta extensión, si la hay.

Parámetros

  • detalles

    objeto

    • genericFamily

      Es la familia de fuentes genérica para la que se debe borrar la fuente.

    • secuencia de comandos

      ScriptCode opcional

      Es la escritura para la que se debe borrar la fuente. Si se omite, se borra la configuración global de la fuente de la secuencia de comandos.

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

clearMinimumFontSize()

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

Borra el tamaño de fuente mínimo establecido por esta extensión, si lo hay.

Parámetros

  • detalles

    objeto opcional

    Este parámetro no se utiliza actualmente.

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

getDefaultFixedFontSize()

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

Obtiene el tamaño predeterminado de las fuentes de ancho fijo.

Parámetros

  • detalles

    objeto opcional

    Este parámetro no se utiliza actualmente.

Muestra

  • Promise<object>

    Chrome 96 y versiones posteriores

getDefaultFontSize()

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

Obtiene el tamaño de fuente predeterminado.

Parámetros

  • detalles

    objeto opcional

    Este parámetro no se utiliza actualmente.

Muestra

  • Promise<object>

    Chrome 96 y versiones posteriores

getFont()

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

Obtiene la fuente para una secuencia de comandos y una familia de fuentes genérica dadas.

Parámetros

  • detalles

    objeto

    • genericFamily

      Es la familia de fuentes genérica para la que se debe recuperar la fuente.

    • secuencia de comandos

      ScriptCode opcional

      Es la escritura para la que se debe recuperar la fuente. Si se omite, se recupera la configuración de fuente de la secuencia de comandos global (código de secuencia de comandos "Zyyy").

Muestra

  • Promise<object>

    Chrome 96 y versiones posteriores

getFontList()

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

Obtiene una lista de fuentes en el sistema.

Muestra

  • Promise<FontName[]>

    Chrome 96 y versiones posteriores

getMinimumFontSize()

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

Obtiene el tamaño de fuente mínimo.

Parámetros

  • detalles

    objeto opcional

    Este parámetro no se utiliza actualmente.

Muestra

  • Promise<object>

    Chrome 96 y versiones posteriores

setDefaultFixedFontSize()

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

Establece el tamaño predeterminado de las fuentes de ancho fijo.

Parámetros

  • detalles

    objeto

    • pixelSize

      número

      Es el tamaño de la fuente en píxeles.

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

setDefaultFontSize()

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

Establece el tamaño de fuente predeterminado.

Parámetros

  • detalles

    objeto

    • pixelSize

      número

      Es el tamaño de la fuente en píxeles.

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

setFont()

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

Establece la fuente para una secuencia de comandos y una familia de fuentes genérica determinadas.

Parámetros

  • detalles

    objeto

    • fontId

      string

      Es el ID de la fuente. La cadena vacía significa que se recurre a la configuración global de la fuente de la escritura.

    • genericFamily

      Es la familia de fuentes genérica para la que se debe establecer la fuente.

    • secuencia de comandos

      ScriptCode opcional

      Es el código de escritura para el que se debe establecer la fuente. Si se omite, se establece la configuración de fuente para la secuencia de comandos global (código de secuencia de comandos "Zyyy").

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

setMinimumFontSize()

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

Establece el tamaño mínimo de la fuente.

Parámetros

  • detalles

    objeto

    • pixelSize

      número

      Es el tamaño de la fuente en píxeles.

Muestra

  • Promise<void>

    Chrome 96 y versiones posteriores

Eventos

onDefaultFixedFontSizeChanged

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

Se activa cuando cambia el parámetro de configuración predeterminado del tamaño de fuente fijo.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (details: object) => void

    • detalles

      objeto

      • levelOfControl

        Es el nivel de control que tiene esta extensión sobre el parámetro de configuración.

      • pixelSize

        número

        Es el tamaño de la fuente en píxeles.

onDefaultFontSizeChanged

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

Se activa cuando cambia el parámetro de configuración del tamaño de fuente predeterminado.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (details: object) => void

    • detalles

      objeto

      • levelOfControl

        Es el nivel de control que tiene esta extensión sobre el parámetro de configuración.

      • pixelSize

        número

        Es el tamaño de la fuente en píxeles.

onFontChanged

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

Se activa cuando cambia un parámetro de configuración de la fuente.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (details: object) => void

    • detalles

      objeto

      • fontId

        string

        Es el ID de la fuente. Consulta la descripción en getFont.

      • genericFamily

        Es la familia de fuentes genérica para la que cambió el parámetro de configuración de la fuente.

      • levelOfControl

        Es el nivel de control que tiene esta extensión sobre el parámetro de configuración.

      • secuencia de comandos

        ScriptCode opcional

        Es el código de escritura para el que cambió el parámetro de configuración de la fuente.

onMinimumFontSizeChanged

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

Se activa cuando cambia el parámetro de configuración del tamaño mínimo de la fuente.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (details: object) => void

    • detalles

      objeto

      • levelOfControl

        Es el nivel de control que tiene esta extensión sobre el parámetro de configuración.

      • pixelSize

        número

        Es el tamaño de la fuente en píxeles.