如何制作自定义皮肤扩展
Turbo 的皮肤扩展就是 Chromium 主题扩展:只改窗口配色与背景图,不含脚本、不申请权限。格式与 Chrome / Edge 主题相同,可在本机加载调试,也可打包成 .crx 分享。
想先换配色、不必自己做扩展时,用标题栏 换肤 即可;也可从标题栏 主题 入口打开 Edge 主题商店。详见 一键换肤。
准备什么
- 一台已安装 Turbo 的电脑(Windows 或 macOS)
- 文本编辑器(用于编辑
manifest.json) - PNG 图片(标题栏、工具栏、新标签页背景等,按需准备)
建议先建一个空文件夹,例如 my-turbo-theme/:
my-turbo-theme/
manifest.json
images/
frame.png
toolbar.png
ntp.png图片不是每一项都必须有。没有图时,浏览器会用 colors 里的纯色填充对应区域。
编写 manifest.json
主题扩展的核心是 "theme" 字段,不要写 background、content_scripts、permissions 等普通扩展项。
下面是一份可直接改的示例(Manifest V3):
{
"manifest_version": 3,
"name": "我的 Turbo 皮肤",
"version": "1.0.0",
"description": "自定义标题栏、工具栏与新标签页配色",
"theme": {
"images": {
"theme_frame": "images/frame.png",
"theme_toolbar": "images/toolbar.png",
"theme_ntp_background": "images/ntp.png"
},
"colors": {
"frame": [37, 99, 235],
"frame_inactive": [100, 116, 139],
"toolbar": [241, 245, 249],
"tab_text": [15, 23, 42],
"tab_background_text": [71, 85, 105],
"bookmark_text": [30, 41, 59],
"ntp_background": [248, 250, 252],
"ntp_text": [15, 23, 42],
"omnibox_background": [255, 255, 255],
"omnibox_text": [15, 23, 42],
"toolbar_button_icon": [51, 65, 85]
},
"properties": {
"ntp_background_alignment": "center",
"ntp_background_repeat": "no-repeat"
}
}
}颜色一律为 RGB 数组,取值 0–255,例如 [37, 99, 235] 是蓝色。商店里的旧主题也常用 Manifest V2,Turbo 同样可以加载。
常用字段
图片 theme.images
路径相对扩展根目录。推荐 PNG。
| 键 | 作用 |
|---|---|
theme_frame | 标题栏 / 窗口外框背景(常横向平铺) |
theme_toolbar | 工具栏、书签栏,以及当前标签一带的背景 |
theme_tab_background | 未选中标签的背景 |
theme_ntp_background | 新标签页背景图 |
theme_ntp_attribution | 新标签页上的作者署名小图(可选) |
未列出的图片键(如无痕窗口外框)一般可省略,浏览器会回退到默认绘制。
颜色 theme.colors
| 键 | 作用 |
|---|---|
frame / frame_inactive | 活动 / 非活动窗口外框 |
toolbar | 工具栏底色,也是当前(激活)标签的底色;当前标签与工具栏连成一块。Turbo 还会让地址栏尽量与此同色 |
tab_text | 当前标签上的文字颜色 |
tab_background_text | 未选中标签上的文字颜色 |
bookmark_text | 书签栏文字 |
ntp_background / ntp_text | 新标签页底色与文字 |
omnibox_background / omnibox_text | 地址栏底色与文字 |
toolbar_button_icon | 工具栏按钮图标着色 |
无痕窗口另有 frame_incognito 等键,需要时再加。
属性 theme.properties
| 键 | 常用取值 |
|---|---|
ntp_background_alignment | center、top、bottom、left、right |
ntp_background_repeat | no-repeat、repeat、repeat-x、repeat-y |
ntp_logo_alternate | 0 或 1,切换新标签页默认徽标深浅 |
着色 theme.tints(可选)
用 HSL 三个 0–1 的小数给按钮、外框等做整体染色。不熟悉可先不写,只靠 colors 和图片就够做出完整皮肤。
在 Turbo 里加载预览
- 打开
chrome://extensions(或 菜单 → 扩展程序 → 管理扩展程序)。 - 打开右上角 开发者模式。
- 点击 加载已解压的扩展程序,选中
my-turbo-theme文件夹。 - 安装成功后外观会立刻切换。改 JSON 或换图后,回到管理页点该扩展的 刷新。
TIP
主题扩展出现在扩展列表里,但没有工具栏图标,这是正常的。卸下或禁用该扩展即恢复之前的外观。
更完整的开发者入口说明见 扩展开发。
打包成 .crx
调试满意后,可在扩展管理页点击 打包扩展程序,选择主题文件夹。成功后得到:
.crx— 安装包,可拖进 Turbo 窗口安装,或发给别人.pem— 私钥,请妥善保存,以后升级同一皮肤要用同一把钥匙
安装 .crx 的方式与普通扩展相同,见 扩展生态与翻译。
制作建议
- 先定
toolbar色。 它同时决定工具栏和当前标签的底色,也会带动地址栏;图的主色尽量贴近该 RGB,并保证tab_text对比度够。未选中标签另用theme_tab_background/tab_background_text。 - 标题栏图宜偏宽、可平铺。
theme_frame在宽窗口上会重复,接缝处不要有明显色差。 - 新标签页图不要过大。 一张过大的 PNG 会拖慢打开速度;全屏背景用压缩过的 JPEG 转 PNG、或缩小尺寸即可。
- 同时看浅色 / 深色系统。 皮肤不会自动跟随系统深色模式;若系统是深色而皮肤是浅色,对比可能突兀。
- 版权。 只使用你有权使用的图片与字体截图。
常见问题
加载后没有变化?
确认 manifest.json 在文件夹根目录、JSON 无语法错误,且 "theme" 字段存在。管理页若显示错误,按提示改后再刷新。
只想改颜色、不想做图?
删掉 images 整段,只保留 colors 即可做成纯色皮肤。
如何卸下自定义皮肤?
在 chrome://extensions 中移除或禁用该主题扩展;或打开 设置 → 外观,恢复默认配色。
能上架 Chrome 商店吗?
可以按商店规则提交主题。日常在 Turbo 里用,加载文件夹或安装 .crx 即可。标题栏 主题 入口面向 Edge 主题商店,适合直接安装现成主题,不必自己做包。
延伸阅读
- 扩展开发 — 开发者模式、打包与发布
- 扩展生态与翻译 — 商店、
.crx与一键换肤入口 - 内置效率工具 → 一键换肤
- Chrome 主题清单说明(Google 文档,字段与 Turbo 相同)