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, é necessário declarar a permissão "fontSettings"
na extensão
manifesto do app. 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 determinadas famílias de fontes genéricas e idiomas scripts. Por exemplo, a fonte usada em chinês simplificado sem serifa pode ser diferente da fonte usado em 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 sã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 usará a
para a configuração "padrão", família de fontes genérica.
Quando uma página da Web especifica um idioma, o Chrome seleciona a fonte com base na configuração do script do idioma correspondente. Se nenhum idioma for especificado, o Chrome usará a configuração para o padrão, ou global.
Os scripts de linguagem suportados 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
idioma de destino. Por exemplo, o Chrome escolhe a fonte para cirílico (código de script ISO 15924 "Cyrl") quando um
especifica o idioma russo e usa essa fonte não apenas para o script cirílico, mas para
tudo o que a fonte cobre, como o latim.
Exemplos
O código a seguir recebe a fonte padrão em árabe.
chrome.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
O próximo snippet define a fonte sans-serif para japonês.
chrome.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Para testar essa API, instale o exemplo da APIfontSettings em chrome-extension-samples repositório de dados.
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 de CSS.
Enumeração
"padrão"
"sansserif"
"serif"
"corrigido"
"cursivo"
"fantasia"
"matemática"
LevelOfControl
Um de
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 esta extensão
controlled\_by\_this\_extension
: controlado por esta 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"
Grave
"Batk"
"Beng"
"Blis"
"Bopo"
"Brah"
"Brai"
"Bugi"
"Buhd"
"Cakm"
"Latas"
"Carla"
"Cham"
"Queria"
"Cirt"
"Usar"
"Cprt"
"Cyrl"
"Caros"
"Deva"
"Dsrt"
"Duplo"
"Egyd"
"Egyh"
"Egip"
"Elba"
"Ethi"
"Geor"
"Geok"
"Glag"
"Gótico"
"Gran"
"Grek"
"Gujr"
"Guru"
"Suspender"
"Hani"
"Hano"
"Hans"
"Hant"
"Hebra"
"Hluw"
"Hmng"
"Pendido"
"Inds"
"Ital"
"Java"
"Jpan"
"Jurc"
"Kali"
"Cara"
"Khmr"
"Khoj"
"Knda"
"Kpel"
"Kthi"
"Lana"
"Laoo"
"Latf"
"Latg"
"Latn"
"Lepc"
"Limb"
"Lina"
"Linb"
"Lisu"
"Loma"
"Lyci"
"Lídi"
"Mand"
"Mani"
"Maia"
"Corrigir"
"Merc"
"Mero"
"Mlym"
"Lua"
"Mong"
"Mroo"
"Mtei"
"Mymr"
"Narb"
"Nbat"
"Nkgb"
"Nkoo"
"Nshu"
"Ogam"
"Olck"
"Orkh"
"Orya"
"Osma"
"Palma"
"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
"Conto"
"Talu"
"Taml"
"Tang"
"Tavt"
"Telu"
"Teng"
"Tfng"
"Tglg"
"Thaa"
"Tailandês"
"Tibt"
"Tirh"
"Ugar"
"Vaidi"
"Visp"
"Wara"
"Wole"
Xpeo,
"Xsux"
"Aiiii"
"Zmth"
"Zsym"
"Zyyy"
Métodos
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
)
Limpa o tamanho de fonte fixo padrão definido por esta 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 esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
)
Limpa o tamanho da fonte padrão definido pela 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 esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
clearFont()
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 genérica de fontes para a qual a fonte deve ser apagada.
-
script
ScriptCode opcional
O script em que a fonte deve ser apagada. Se omitido, a configuração de fonte do script global será limpa.
-
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
)
Limpa o tamanho mínimo da fonte definido pela 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 esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
getDefaultFixedFontSize()
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 esta aparência:(details: object) => void
-
detalhes
objeto
-
levelOfControl
O nível de controle que esta extensão tem sobre a configuração.
-
pixelSize
number
O tamanho da fonte em pixels.
-
-
Retorna
-
Promise<object>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
)
Recebe o tamanho da 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 esta aparência:(details: object) => void
-
detalhes
objeto
-
levelOfControl
O nível de controle que esta extensão tem sobre a configuração.
-
pixelSize
number
O tamanho da fonte em pixels.
-
-
Retorna
-
Promise<object>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
)
Recebe a fonte de um determinado script e família de fontes genérica.
Parâmetros
-
detalhes
objeto
-
genericFamily
A família genérica de fontes para a qual a fonte deve ser recuperada.
-
script
ScriptCode opcional
O script para o qual a fonte deve ser recuperada. Se omitido, a configuração de fonte do script global (código de script "Zyyy") é recuperada.
-
-
callback
função opcional
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
fontId
string
O ID da fonte. Em vez do valor de preferência do ID de fonte literal, pode ser o ID da fonte para a qual o sistema resolve o valor de preferência. Portanto,
fontId
pode ser diferente da fonte transmitida parasetFont
se, por exemplo, a fonte não estiver disponível no sistema. A string vazia indica substituto para a configuração de fonte do script global. -
levelOfControl
O nível de controle que esta extensão tem sobre a configuração.
-
-
Retorna
-
Promise<object>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
)
Recebe uma lista de fontes no sistema.
Parâmetros
Retorna
-
Promise<FontName[]>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
getMinimumFontSize()
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 esta aparência:(details: object) => void
-
detalhes
objeto
-
levelOfControl
O nível de controle que esta extensão tem sobre a configuração.
-
pixelSize
number
O tamanho da fonte em pixels.
-
-
Retorna
-
Promise<object>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
setDefaultFixedFontSize()
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 esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
)
Define o tamanho da fonte padrão.
Parâmetros
-
detalhes
objeto
-
pixelSize
number
O tamanho da fonte em pixels.
-
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
)
Define a fonte de um script e uma família de fontes genérica.
Parâmetros
-
detalhes
objeto
-
fontId
string
O ID da fonte. A string vazia significa substituir a configuração de fonte do script global.
-
genericFamily
É a família genérica de fontes 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 de fonte do script global (código de script "Zyyy") é definida.
-
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
setMinimumFontSize()
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 esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 96 ou versão mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
Eventos
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Disparado quando a configuração de tamanho de fonte fixo padrão é alterada.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
levelOfControl
O nível de controle que esta extensão tem sobre a configuração.
-
pixelSize
number
O tamanho da fonte em pixels.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Disparado quando a configuração de tamanho de fonte padrão é alterada.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
levelOfControl
O nível de controle que esta extensão tem sobre a configuração.
-
pixelSize
number
O tamanho da fonte em pixels.
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Disparado quando uma configuração de fonte é alterada.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
fontId
string
O ID da fonte. Consulte a descrição em
getFont
. -
genericFamily
É a família genérica de fontes em que a configuração da fonte mudou.
-
levelOfControl
O nível de controle que esta 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,
)
Disparado quando a configuração de tamanho mínimo de fonte é alterada.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
levelOfControl
O nível de controle que esta extensão tem sobre a configuração.
-
pixelSize
number
O tamanho da fonte em pixels.
-
-