テーマは、ブラウザの外観を変更する特別な種類の拡張機能です。テーマは通常の拡張機能と同様にパッケージ化されますが、JavaScript コードや HTML コードは含まれません。
テーマは、拡張機能と同じ手順で Chrome ウェブストアにアップロードします。アップロード時に、カテゴリを選択するよう求められます。テーマのカテゴリのリストについては、Chrome ウェブストア ドキュメントのおすすめの方法をご覧ください。
さまざまなテーマを Chrome ウェブストアで探して試すことができます。
マニフェスト
テーマの manifest.json
ファイルの例を次に示します。
{
"manifest_version": 3,
"version": "2.6",
"name": "camo theme",
"theme": {
"images" : {
"theme_frame" : "images/theme_frame_camo.png",
"theme_frame_overlay" : "images/theme_frame_stripe.png",
"theme_toolbar" : "images/theme_toolbar_camo.png",
"theme_ntp_background" : "images/theme_ntp_background_norepeat.png",
"theme_ntp_attribution" : "images/attribution.png"
},
"colors" : {
"frame" : [71, 105, 91],
"toolbar" : [207, 221, 192],
"ntp_text" : [20, 40, 0],
"ntp_link" : [36, 70, 0],
"ntp_section" : [207, 221, 192],
"button_background" : [255, 255, 255]
},
"tints" : {
"buttons" : [0.33, 0.5, 0.47]
},
"properties" : {
"ntp_background_alignment" : "bottom"
}
}
}
色
色は RGB 形式です。「colors」フィールドで使用できる文字列については、kOverwritableColorTable
をご覧ください。
画像
画像リソースは、拡張機能のルートからの相対パスを使用します。kPersistingImages
の文字列で指定されたイメージをオーバーライドできます。すべての画像を PNG 形式で保存する必要があります。そうしないと、画像が正しくレンダリングされません。
プロパティ
このフィールドでは、背景の配置、背景の繰り返し、代替ロゴなどのプロパティを指定できます。プロパティとその値については、kDisplayProperties
をご覧ください。
色合い
ボタン、フレーム、背景タブなどの UI の部分に適用する色合いを指定できます。Google Chrome では、画像ではなく色調をサポートしています。これは、画像はプラットフォーム間で機能せず、新しいボタンを追加する場合に脆弱になるためです。「tints」フィールドで使用できる文字列については、kTintTable
をご覧ください。
色合いは色相、彩度、明度(HSL)形式で、0 ~ 1.0 の範囲の浮動小数点数を使用します。
- Hue は絶対値で、0 と 1 は赤です。
- 彩度は、現在指定されている画像を基準としています。0.5 は変更なし、0 は完全に飽和状態、1 は完全に飽和状態です。
- 明るさも相対的な値で、0.5 は変化なし、0 はすべてのピクセルが黒、1 はすべてのピクセルが白です。
または、任意の HSL 値に -1.0
を使用して、変更なしを指定することもできます。