chrome.fontSettings

Descrição

Use a API chrome.fontSettings para gerenciar as configurações de fonte do Chrome.

Permissões

fontSettings

Para usar a API Font Settings, declare a permissão "fontSettings" no manifesto da extensão. Exemplo:

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

Conceitos e uso

O Chrome permite que algumas configurações de fonte dependam de famílias de fontes genéricas e scripts de idioma. Por exemplo, a fonte usada para o chinês simplificado sem serifa pode ser diferente da fonte usada para o japonês com serifa.

As famílias de fontes genéricas compatíveis com o Chrome são baseadas em famílias de fontes genéricas do CSS e estão listadas em GenericReference. Quando uma página da Web especifica uma família de fontes genérica, o Chrome seleciona a fonte com base na configuração correspondente. Se nenhuma família de fontes genérica for especificada, o Chrome vai usar a configuração da família de fontes genérica "padrão".

Quando uma página da Web especifica um idioma, o Chrome seleciona a fonte com base na configuração do script de idioma correspondente. Se nenhum idioma for especificado, o Chrome vai usar a configuração para o script padrão ou global.

Os scripts de idioma compatíveis são especificados pelo código de script ISO 15924 e listados em ScriptCode. Tecnicamente, as configurações do Chrome não são estritamente por script, mas também dependem da linguagem. Por exemplo, o Chrome escolhe a fonte para cirílico (código de script ISO 15924 "Cyrl") quando uma página da Web especifica o idioma russo e usa essa fonte não apenas para o script cirílico, mas para tudo o que a fonte abrange, como o latim.

Exemplos

O código a seguir recebe a fonte padrão para árabe.

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

O snippet a seguir define a fonte sem serifa para o japonês.

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

Para testar essa API, instale o exemplo da API fontSettings do repositório chrome-extension-samples.

Tipos

FontName

Representa um nome de fonte.

Propriedades

  • displayName

    string

    O nome de exibição da fonte.

  • fontId

    string

    O ID da fonte.

GenericFamily

Uma família de fontes genérica do CSS.

Enumeração

"standard"

"sansserif"

"serif"

"fixed"

"cursive"

"fantasy"

"math"

LevelOfControl

Um dos not\_controllable: não pode ser controlado por nenhuma extensão controlled\_by\_other\_extensions: controlado por extensões com maior precedência controllable\_by\_this\_extension: pode ser controlado por essa extensão controlled\_by\_this\_extension: controlado por essa extensão

Enumeração

"not_controllable"

"controlled_by_other_extensions"

"controllable_by_this_extension"

"controlled_by_this_extension"

ScriptCode

Um código de script ISO 15924. O script padrão ou global é representado pelo código de script "Zyyy".

Enumeração

"Afak"

"Árabe"

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

"Egito"

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

"Lydia"

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

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

Limpa o tamanho de fonte fixo padrão definido por essa extensão, se houver.

Parâmetros

  • detalhes

    objeto opcional

    Esse parâmetro não está sendo usado no momento.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

clearDefaultFontSize()

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

Limpa o tamanho de fonte padrão definido por essa extensão, se houver.

Parâmetros

  • detalhes

    objeto opcional

    Esse parâmetro não está sendo usado no momento.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

clearFont()

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

Limpa a fonte definida por essa extensão, se houver.

Parâmetros

  • detalhes

    objeto

    • genericFamily

      A família de fontes genérica para a qual a fonte precisa ser limpa.

    • script

      ScriptCode opcional

      O script para o qual a fonte precisa ser limpa. Se omitido, a configuração da fonte do script global será limpa.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

clearMinimumFontSize()

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

Limpa o tamanho mínimo da fonte definido por essa extensão, se houver.

Parâmetros

  • detalhes

    objeto opcional

    Esse parâmetro não está sendo usado no momento.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

getDefaultFixedFontSize()

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

Recebe o tamanho padrão para fontes de largura fixa.

Parâmetros

  • detalhes

    objeto opcional

    Esse parâmetro não está sendo usado no momento.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

      • pixelSize

        number

        O tamanho da fonte em pixels.

Retorna

  • Promise<object>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

getDefaultFontSize()

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

Recebe o tamanho de fonte padrão.

Parâmetros

  • detalhes

    objeto opcional

    Esse parâmetro não está sendo usado no momento.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

      • pixelSize

        number

        O tamanho da fonte em pixels.

Retorna

  • Promise<object>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

getFont()

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

Consegue a fonte para um determinado script e família de fontes genérica.

Parâmetros

  • detalhes

    objeto

    • genericFamily

      A família de fontes genérica para a qual a fonte precisa ser recuperada.

    • script

      ScriptCode opcional

      O script para o qual a fonte precisa ser recuperada. Se omitido, a configuração da fonte do script global (código do script "Zyyy") será recuperada.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • fontId

        string

        O ID da fonte. Em vez do valor literal da preferência do ID da fonte, esse pode ser o ID da fonte para a qual o sistema resolve o valor da preferência. Portanto, fontId pode ser diferente da fonte transmitida para setFont, se, por exemplo, a fonte não estiver disponível no sistema. A string vazia significa que a configuração de fonte de script global é usada como substituto.

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

Retorna

  • Promise<object>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

getFontList()

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

Recebe uma lista de fontes no sistema.

Parâmetros

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (results: FontName[]) => void

Retorna

  • Promise<FontName[]>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

getMinimumFontSize()

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

Recebe o tamanho mínimo da fonte.

Parâmetros

  • detalhes

    objeto opcional

    Esse parâmetro não está sendo usado no momento.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

      • pixelSize

        number

        O tamanho da fonte em pixels.

Retorna

  • Promise<object>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

setDefaultFixedFontSize()

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

Define o tamanho padrão para fontes de largura fixa.

Parâmetros

  • detalhes

    objeto

    • pixelSize

      number

      O tamanho da fonte em pixels.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

setDefaultFontSize()

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

Define o tamanho de fonte padrão.

Parâmetros

  • detalhes

    objeto

    • pixelSize

      number

      O tamanho da fonte em pixels.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

setFont()

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

Define a fonte para um determinado script e família de fontes genérica.

Parâmetros

  • detalhes

    objeto

    • fontId

      string

      O ID da fonte. A string vazia significa usar a configuração de fonte de script global.

    • genericFamily

      A família de fontes genérica para a qual a fonte precisa ser definida.

    • script

      ScriptCode opcional

      O código do script em que a fonte precisa ser definida. Se omitido, a configuração da fonte para o script global (código do script "Zyyy") será definida.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

setMinimumFontSize()

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

Define o tamanho mínimo da fonte.

Parâmetros

  • detalhes

    objeto

    • pixelSize

      number

      O tamanho da fonte em pixels.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 96 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

Eventos

onDefaultFixedFontSizeChanged

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

Acionado quando a configuração de tamanho de fonte fixa padrão muda.

Parâmetros

  • callback

    função

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

      • pixelSize

        number

        O tamanho da fonte em pixels.

onDefaultFontSizeChanged

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

Acionado quando a configuração de tamanho de fonte padrão muda.

Parâmetros

  • callback

    função

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

      • pixelSize

        number

        O tamanho da fonte em pixels.

onFontChanged

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

Acionado quando uma configuração de fonte muda.

Parâmetros

  • callback

    função

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • fontId

        string

        O ID da fonte. Consulte a descrição em getFont.

      • genericFamily

        A família de fontes genérica em que a configuração de fonte foi alterada.

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

      • script

        ScriptCode opcional

        O código do script em que a configuração da fonte foi alterada.

onMinimumFontSizeChanged

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

É acionado quando a configuração de tamanho mínimo da fonte muda.

Parâmetros

  • callback

    função

    O parâmetro callback tem este formato:

    (details: object) => void

    • detalhes

      objeto

      • levelOfControl

        O nível de controle que essa extensão tem sobre a configuração.

      • pixelSize

        number

        O tamanho da fonte em pixels.