.ptheme
推荐格式。本质是 ZIP 容器,可以携带预览图和背景图,便于在 power-tv 与社区之间分享。
THEME AUTHORING GUIDE
power-tv 主题包只包含配置与图片,不包含可执行代码。你可以从官方模板开始,完成配色后把它发布到社区。
三种格式使用同一份 theme.json,区别只在是否包含图片资源。
推荐格式。本质是 ZIP 容器,可以携带预览图和背景图,便于在 power-tv 与社区之间分享。
与 .ptheme 内容完全相同,仅扩展名不同。适合使用常见压缩工具制作和检查。
直接上传 theme.json,适合纯配色主题。不能引用背景图片,也不会包含独立预览图。
先完成最小可用版本,再逐步补充深色配色和素材。
以下字段决定主题在社区和 power-tv 中的身份。名称与描述可使用字符串,或包含 en、zh-CN 等键的本地化对象。
schemes.light 是必需项,schemes.dark 可省略。primary 和 surface 足以建立基础风格;其余 Material 3 角色可按需补充,未指定的角色由 power-tv 派生。
建议明确设置 onPrimary、onSurface 等前景角色,并检查文字与背景的对比度。颜色支持 #RGB、#RRGGBB 和 #AARRGGBB。
还可配置 dataViz 图表强调色、系统字体、卡片圆角和仪表盘布局。使用 Material Theme Builder 时,只需将导出结果中的颜色角色整理到 schemes 中。
将 theme.json 放在压缩包根目录。preview.webp 用于社区预览;背景图必须位于 assets 目录,并在 backdrop.image 中填写对应路径。
my-theme.ptheme
├── theme.json
├── preview.webp
└── assets/
└── backdrop.webp在包含 theme.json 的工作目录中打包。下面命令包含可选预览图和 assets 目录;没有这些素材时,从命令中移除对应项,或直接使用 .json。
cd my-theme
zip -r ../my-theme.ptheme theme.json preview.webp assets不要先打包外层目录,否则 theme.json 会位于子目录而无法读取。上传前可解压检查结构,并在 power-tv 中预览实际效果。
使用 GitHub 登录社区后上传主题包。服务端校验通过后会公开展示;后续更新必须保持相同主题 ID,并使用未发布过的新版本号。已发布版本不可覆盖,历史版本仍可下载。
在 power-tv 中打开“设置 → 主题包 → 导入”,选择下载的 .ptheme、.zip 或 .json 文件,预览确认后应用。
社区与 power-tv 都会检查不可信主题包,超限或结构不安全的文件会被拒绝。
主题包不能包含脚本、可执行文件、绝对路径或 .. 路径段。ZIP 不支持加密、多磁盘和 ZIP64;重复条目、损坏图片及伪造扩展名也会被拒绝。
上游官方文档维护最新的字段、布局预设、导入行为与已知边界。