説明
chrome.fontSettings
API を使用して、Chrome のフォント設定を管理します。
権限
fontSettings
マニフェスト
Font Settings API を使用するには、拡張機能のマニフェストで「fontSettings」権限を宣言する必要があります。次に例を示します。
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
汎用フォント ファミリーと汎用スクリプト
Chrome では、一部のフォント設定を特定の汎用フォント ファミリーや言語スクリプトに依存させることができます。たとえば、Sans Serif の簡体字中国語で使用されるフォントと、日本語の Serif で使用されるフォントが異なる場合があります。
Chrome でサポートされている汎用フォント ファミリーは CSS 汎用フォント ファミリーに基づいています。これらのフォント ファミリーは、以下の API リファレンスに記載されています。ウェブページで汎用フォント ファミリーが指定されている場合、Chrome では対応する設定に基づいてフォントが選択されます。汎用フォント ファミリーが指定されていない場合、Chrome では「標準」の汎用フォント ファミリーの設定が使用されます。
ウェブページで言語が指定されている場合、Chrome では対応する言語のスクリプトの設定に基づいてフォントが選択されます。言語が指定されていない場合、Chrome ではデフォルト(グローバル)のスクリプトの設定が使用されます。
サポートされている言語スクリプトは、ISO 15924 スクリプト コードによって指定されており、以下の API リファレンスに記載されています。技術的には、Chrome の設定は厳密にはスクリプトごとではなく、言語にも依存します。たとえば、ウェブページがロシア語を指定している場合、Chrome はキリル文字(ISO 15924 スクリプト コード「Cyrl」)のフォントを選択し、キリル文字だけでなく、ラテン文字など、フォントがカバーするすべての項目でこのフォントを使用します。
例
次のコードは、アラビア語の標準フォントを取得します。
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' }
);
この API を試すには、chrome-extension-samples リポジトリから fontSettings API の例をインストールしてください。
型
FontName
フォント名を表します。
プロパティ
-
displayName
文字列
フォントの表示名。
-
fontId
文字列
フォント ID。
GenericFamily
CSS 汎用フォント ファミリー。
Enum
"standard"
"cursive"
LevelOfControl
not\_controllable
のいずれか: どの拡張機能でも制御できない
controlled\_by\_other\_extensions
: 優先度の高い拡張機能によって制御
controllable\_by\_this\_extension
: この拡張機能で制御できる
controlled\_by\_this\_extension
: この拡張機能で制御
Enum
"not_controllable"
"controllable_by_this_extension"
"controlled_by_this_extension"
ScriptCode
ISO 15924 スクリプト コード。デフォルト(グローバル)のスクリプトは、スクリプト コード「Zyyy」で表されます。
Enum
"Cans"
"Geok"
"Hebr"
"Kali"
"Lisu"
"Merc"
"Nshu"
"Orkh"
"Perm"
"Teng"
"Ugar"
"Wole"
Methods
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
)
この拡張機能によって設定されたデフォルトの固定フォントサイズをクリアします(存在する場合)。
パラメータ
-
詳細
オブジェクト 省略可
このパラメータは現在使用されていません。
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
)
この拡張機能によって設定されたデフォルトのフォントサイズをクリアします(存在する場合)。
パラメータ
-
詳細
オブジェクト 省略可
このパラメータは現在使用されていません。
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
)
この拡張機能によって設定されたフォントをクリアします(ある場合)。
パラメータ
-
詳細
オブジェクト
-
genericFamily
フォントを消去する汎用フォント ファミリー。
-
筆跡
ScriptCode 省略可
フォントを消去するスクリプト。省略すると、グローバル スクリプト フォント設定はクリアされます。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
)
この拡張機能によって設定された最小フォントサイズをクリアします(存在する場合)。
パラメータ
-
詳細
オブジェクト 省略可
このパラメータは現在使用されていません。
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
)
固定幅フォントのデフォルト サイズを取得します。
パラメータ
-
詳細
オブジェクト 省略可
このパラメータは現在使用されていません。
-
callback
関数(省略可)
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
levelOfControl
この拡張機能の設定に対する制御レベル。
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
戻り値
-
Promise<object>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
)
デフォルトのフォントサイズを取得します。
パラメータ
-
詳細
オブジェクト 省略可
このパラメータは現在使用されていません。
-
callback
関数(省略可)
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
levelOfControl
この拡張機能の設定に対する制御レベル。
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
戻り値
-
Promise<object>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
)
指定されたスクリプトと汎用フォント ファミリーのフォントを取得します。
パラメータ
-
詳細
オブジェクト
-
genericFamily
フォントを取得する汎用フォント ファミリー。
-
筆跡
ScriptCode 省略可
フォントを取得するスクリプト。省略すると、グローバルスクリプト(スクリプトコード「Zyyy」)のフォント設定が取得されます。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
fontId
文字列
フォント ID。リテラル フォント ID 設定値ではなく、システムが設定値を解決するフォントの ID を指定できます。そのため、システムでフォントが利用できない場合など、
fontId
はsetFont
に渡されるフォントと異なる可能性があります。空の文字列は、グローバル スクリプト フォント設定にフォールバックすることを意味します。 -
levelOfControl
この拡張機能の設定に対する制御レベル。
-
-
戻り値
-
Promise<object>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
)
システム上のフォントのリストを取得します。
戻り値
-
Promise<FontName[]>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
)
最小フォントサイズを取得します。
パラメータ
-
詳細
オブジェクト 省略可
このパラメータは現在使用されていません。
-
callback
関数(省略可)
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
levelOfControl
この拡張機能の設定に対する制御レベル。
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
戻り値
-
Promise<object>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
callback?: function,
)
固定幅フォントのデフォルト サイズを設定します。
パラメータ
-
詳細
オブジェクト
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
)
デフォルトのフォントサイズを設定します。
パラメータ
-
詳細
オブジェクト
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
)
特定のスクリプトと汎用フォント ファミリーのフォントを設定します。
パラメータ
-
詳細
オブジェクト
-
fontId
文字列
フォント ID。空の文字列は、グローバル スクリプト フォント設定にフォールバックすることを意味します。
-
genericFamily
フォントを設定する汎用フォント ファミリー。
-
筆跡
ScriptCode 省略可
フォントを設定するスクリプト コード。省略すると、グローバルスクリプト(スクリプトコード「Zyyy」)のフォント設定が適用されます。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
callback?: function,
)
最小フォントサイズを設定します。
パラメータ
-
詳細
オブジェクト
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 96 以降Promise は Manifest V3 以降でのみサポートされます。他のプラットフォームではコールバックを使用する必要があります。
イベント
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
デフォルトの固定フォントサイズの設定が変更されたときに呼び出されます。
パラメータ
-
callback
機能
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
levelOfControl
この拡張機能の設定に対する制御レベル。
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
デフォルトのフォントサイズの設定が変更されたときに呼び出されます。
パラメータ
-
callback
機能
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
levelOfControl
この拡張機能の設定に対する制御レベル。
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
フォント設定が変更されたときに呼び出されます。
パラメータ
-
callback
機能
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
fontId
文字列
フォント ID。
getFont
の説明をご覧ください。 -
genericFamily
フォント設定が変更された汎用フォント ファミリー。
-
levelOfControl
この拡張機能の設定に対する制御レベル。
-
筆跡
ScriptCode 省略可
フォント設定が変更されたスクリプト コード。
-
-
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
最小フォントサイズの設定が変更されたときに呼び出されます。
パラメータ
-
callback
機能
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
levelOfControl
この拡張機能の設定に対する制御レベル。
-
pixelSize
数値
フォントサイズ(ピクセル単位)。
-
-