chrome.fontSettings

Description

使用 chrome.fontSettings API 来管理 Chrome 的字体设置。

Permissions

fontSettings

# Manifest

要使用字体设置 API,您必须在扩展清单中声明“fontSettings”权限。例如:

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

# Generic Font Families and Scripts(通用字体系列和脚本)

Chrome 允许某些字体设置依赖于某些通用字体系列和语言脚本。例如,用于 sans-serif Simplified Chinese 的字体可能与用于 serif Japanese 的字体不同。

Chrome 支持的通用字体系列基于 CSS 通用字体(CSS generic font families)系列,并在下面的 API 参考中列出。当网页指定通用字体系列时,Chrome 会根据相应的设置选择字体。如果未指定通用字体系列,Chrome 将使用“标准”通用字体系列的设置。

当网页指定语言时,Chrome 会根据相应语言脚本的设置选择字体。如果未指定语言,Chrome 将使用默认或全局脚本的设置。

支持的语言脚本由 ISO 15924 脚本代码指定,并在下面的 API 参考中列出。从技术上讲,Chrome 设置并非严格按照脚本进行设置,还取决于语言。例如,当网页指定俄语时,Chrome 会选择西里尔文字体(ISO 15924 脚本代码“Cyrl”),并且不仅将这种字体用于西里尔文脚本,还用于字体涵盖的所有内容,例如拉丁文。

# Examples

以下代码获取阿拉伯语的标准字体。

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

下一个片段设置日语的 sans-serif 字体。

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

您可以在 examples/api/fontSettings 目录中找到使用字体设置 API 的示例扩展。有关其他示例和查看源代码的帮助,请参阅示例Samples

Summary

Types

FontName

表示字体名称。

PROPERTIES

  • displayName

    string

    字体的显示名称。

  • fontId

    string

    字体标识。

GenericFamily

CSS 通用字体系列。

TYPE

"standard", "sansserif", "serif", "fixed", "cursive", or "fantasy"

LevelOfControl

not\_controllable 之一:不能被任何扩展控制

controlled\_by\_other\_extensions:由具有更高优先级的扩展控制

controllable\_by\_this\_extension:可以由这个扩展控制

controlled\_by\_this\_extension:由这个扩展控制

TYPE

"not_controllable", "controlled_by_other_extensions", "controllable_by_this_extension", or "controlled_by_this_extension"

ScriptCode

ISO 15924 脚本代码。默认或全局脚本由脚本代码“Zyyy”表示。

TYPE

"Afak", "Arab", "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", "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", or "Zyyy"

Methods

clearDefaultFixedFontSize

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

Promise

清除此扩展设置的默认固定字体大小(如果有)。

PARAMETERS

  • details

    object optional

    该参数当前未使用。

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

clearDefaultFontSize

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

Promise

清除此扩展程序设置的默认字体大小(如果有)。

PARAMETERS

  • details

    object optional

    该参数当前未使用。

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

clearFont

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

Promise

清除此扩展设置的字体(如果有)。

PARAMETERS

  • details

    object

    • genericFamily

      GenericFamily

      应清除字体的通用字体系列。

    • script

      ScriptCode optional

      应清除字体的脚本。如果省略,则清除全局脚本字体设置。

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

clearMinimumFontSize

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

Promise

清除此扩展程序设置的最小字体大小(如果有)。

PARAMETERS

  • details

    object optional

    该参数当前未使用。

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

getDefaultFixedFontSize

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

Promise

获取固定宽度字体的默认大小。

PARAMETERS

  • details

    object optional

    该参数当前未使用。

  • callback

    function optional

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

      • pixelSize

        number

        以像素为单位的字体大小。

RETURNS

  • Promise<object>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

getDefaultFontSize

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

Promise

获取默认字体大小。

PARAMETERS

  • details

    object optional

    该参数当前未使用。

  • callback

    function optional

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

      • pixelSize

        number

        以像素为单位的字体大小。

RETURNS

  • Promise<object>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

getFont

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

Promise

获取给定脚本和通用字体系列的字体。

PARAMETERS

  • details

    object

    • genericFamily

      GenericFamily

      应为其检索字体的通用字体系列。

    • script

      ScriptCode optional

      应为其检索字体的脚本。如果省略,则检索全局脚本(脚本代码“Zyyy”)的字体设置。

  • callback

    function optional

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • fontId

        string

        字体标识。这可能是系统将首选项值解析为的字体的 ID,而不是文字字体 ID 首选项值。因此,fontId 可能与传递给 setFont 的字体不同,例如,如果该字体在系统上不可用。空字符串表示回退到全局脚本字体设置。

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

RETURNS

  • Promise<object>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

getFontList

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

Promise

获取系统上的字体列表。

PARAMETERS

  • callback

    function optional

    The callback parameter looks like:

    (results: FontName[]) => void

RETURNS

  • Promise<FontName[]>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

getMinimumFontSize

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

Promise

获取最小字体大小。

PARAMETERS

  • details

    object optional

    该参数当前未使用。

  • callback

    function optional

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

      • pixelSize

        number

        以像素为单位的字体大小。

RETURNS

  • Promise<object>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

setDefaultFixedFontSize

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

Promise

设置固定宽度字体的默认大小。

PARAMETERS

  • details

    object

    • pixelSize

      number

      以像素为单位的字体大小。

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

setDefaultFontSize

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

Promise

设置默认字体大小。

PARAMETERS

  • details

    object

    • pixelSize

      number

      以像素为单位的字体大小

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

setFont

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

Promise

设置给定脚本和通用字体系列的字体。

PARAMETERS

  • details

    object

    • fontId

      string

      字体标识。空字符串意味着回退到全局脚本字体设置。

    • genericFamily

      GenericFamily

      应为其设置字体的通用字体系列。

    • script

      ScriptCode optional

      应设置字体的脚本代码。如果省略,则设置全局脚本(脚本代码“Zyyy”)的字体设置。

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

setMinimumFontSize

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

Promise

设置最小字体大小。

PARAMETERS

  • details

    object

    • pixelSize

      number

      以像素为单位的字体大小

  • callback

    function optional

    The callback parameter looks like:

    () => void

RETURNS

  • Promise<void>

    Pending

    这仅在未指定回调参数时返回 Promise,并且使用 MV3+。 Promise 中的类型与回调的第一个参数相同。

Events

onDefaultFixedFontSizeChanged

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

当默认的固定字体大小设置更改时触发。

PARAMETERS

  • callback

    function

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

      • pixelSize

        number

        以像素为单位的字体大小。

onDefaultFontSizeChanged

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

当默认字体大小设置更改时触发。

PARAMETERS

  • callback

    function

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

      • pixelSize

        number

        以像素为单位的字体大小。

onFontChanged

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

当字体设置改变时触发。

PARAMETERS

  • callback

    function

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • fontId

        string

        字体标识。请参阅 getFont 中的说明。

      • genericFamily

        GenericFamily

        字体设置已更改的通用字体系列。

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

      • script

        ScriptCode optional

        字体设置已更改的脚本代码。

onMinimumFontSizeChanged

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

当最小字体大小设置更改时触发。

PARAMETERS

  • callback

    function

    The callback parameter looks like:

    (details: object) => void
    • details

      object

      • levelOfControl

        LevelOfControl

        此扩展程序对设置的控制级别。

      • pixelSize

        number

        以像素为单位的字体大小。

By.一粒技术服务.

results matching ""

    No results matching ""