---
url: /design/firmware-type-mapping.md
---
# 固件实机排版映射

> 适用设备：Read Pico，684 × 1216 物理像素。

Figma 采用 Noto Sans SC 的设计字号；固件在 MiSansVF 的灰阶屏输出上，以本表映射字面高度、字重和可读性。这里的设备字号是目标面板的物理像素，不能再随预览缩放或按分辨率二次缩放。下表对照 684 × 1216 固件绘制代码；仅对列明的语义角色成立，不把单个页面的坐标或占位文字提升为通用规范。

| 语义角色 | Figma 设计字号 | 固件字号 | 行框 | 字重 | 使用位置 |
| --- | ---: | ---: | ---: | --- | --- |
| 状态栏 | 24 | 24 | 24 | Medium 500 | 时间、电量百分比 |
| 根页 App Bar 标题 | 40 | 48 | 56 | Medium 500 | 首页、书库、应用、设置的系统标题 |
| 带返回的 App Bar 标题 | 36 | 40 | 48 | Medium 500 | 阅读设置等二级页的系统标题 |
| 设置行主标签 | — | 36 | 44 | Medium 500 | 设置分类与阅读设置行 |
| 设置行副信息 | — | 24 | 32 | Regular 400 | 根页设置行的说明 |
| 首页最近阅读书名 | 28 | 32 | 40 | Bold 700 | 最近阅读条目 |
| 首页最近阅读元信息 | 20 | 26 | 34 | Regular 400；进度 Medium 500 | 作者、上次阅读时间、进度 |
| 应用项名称 | 28 | 32 | 40 | 当前继承默认字重，未显式指定 | 应用页 IconGrid 名称，最多两行 |
| 排序与菜单标签 | — | 32 | 40 | Medium 500 | 书库排序、应用页排序、阅读工具标题 |
| 字体列表名称 | 32 | 36 | 44 | 未选中 Regular 400、选中 Medium 500 | 字体设置页的可选字体 |
| 主书名 | 48 | 48 | 60 | Medium 500 | 首页当前阅读 |
| 主书作者 | 28 | 30 | 38 | Regular 400 | 首页当前阅读 |
| 主书进度 | 28 | 28 | 36 | Bold 700 | 首页当前阅读 |
| 次级操作文字 | 24 | 24 | 32 | Regular 400 | 轻触开始阅读等提示 |

“—”表示现有资料没有单独记录该角色的 Figma 字号，不借用相近角色的值充数。上表的“行框”是单行文字的排版空间，不等于整个列表项或点击热区。应用宫格名称目前由绘制函数继承字体默认字重，不能写成已使用 Medium 500。字体列表中未选中的名称使用 Regular 400，选中项使用 Medium 500。

## 图标可见尺寸

图标尺寸指屏幕上的可见绘制槽，不是点击热区，也不是 SVG 原始视口。下表以 684 × 1216 固件页面为准；其他分辨率通过适配布局另行计算。

| 场景 | 图标可见尺寸 | 搭配的文字 | 适用边界 |
| --- | ---: | --- | --- |
| 状态栏的状态图标 | 同步点阵 26 × 26 px，Wi-Fi／电池点阵 28 × 28 px | 时间与电量百分比 24 px | 无点阵回退图标为 24 × 24 px；尺寸按具体资源使用，不推广为所有状态图标的固定值 |
| App Bar 右侧动作 | 48 × 48 px | 根页标题 48 px、二级标题 40 px | 最多两项；相邻图标间可见间隔 24 px |
| App Bar 返回 | 24 × 24 px | 二级标题 40 px | 放在 48 px 前导槽；热区为 72 × 80 px，不把箭头放大到 48 px |
| 底部导航或单个底部操作 | 48 × 48 px | 可以不显示文字 | 导航项建议 2–5 个；单项按独立操作绘制 |
| 设置分类行前导图标 | 48 × 48 px | 主标签 36 px，副信息 24 px | 整行可点；图标位于 96 px 行内 |
| 阅读设置行尾部箭头 | 36 × 36 px | 行文字 36 px | 只是二级页尾部提示，不套用于顶栏返回 |
| 首页“最近阅读”标题图标 | 30 × 30 px | 区块标题 32 px | 这是当前首页区块的尺寸；右侧“更多”箭头另用 24 × 24 px，其他小组件按自己的布局定尺寸 |
| 应用宫格项 | 当前布局示例为 64 × 64 px 内部图标槽 | 应用名称 32 px、最多两行 | 根据完整单元尺寸排版；64 px 不是所有应用图标的固定协议，也不改变底部导航的 48 px |
| 阅读工具弹层操作 | 48 × 48 px | 有标签时使用 24 px | 图标和标签同属一个完整点击单元 |
| 排序、展开与选中提示 | 24 × 24 px | 排序标签 32 px、字体名 36 px | 小箭头和勾号是行内提示；点击区域由整行或父控件提供 |
| 整页分页的前后箭头 | 24 × 24 px | 应用页页码 32 px | 箭头置于各自 80 × 80 px 热区；书库页码现为 20 px，不据此把 20 px 定为所有页码标准 |
| OOBE、SD 重载与致命错误插画 | 256 × 256 px | 标题 48 px、说明 28 px | 当前页面使用 12 px 描边；仅适用这类全屏状态页 |

点阵图标以目标槽位的物理像素生成；例如 48 px 导航图标与 256 px 状态插画需分别保有各自的原生分辨率，不用小图拉伸代替。自定义 Lua 插件底栏图标的当前格式为 48 × 48 px 单色点阵，具体文件规则见[Lua 插件 API](/developer/lua-plugin-api)。

## 其他文字场景

* 字体设置页的页码使用 32 px，字体选项名称使用 36 px，底部“保存”按钮文字使用 32 px。按钮的 70 px 高度是热区/容器尺寸，不是字号。
* OOBE、SD 重载与错误页的说明为 28 px，主按钮为 32 px，进度与底部提示为 24 px。这些页面使用启动时的最小字体能力，不要用普通页面的字体 Token 去假定它已加载 MiSansVF。
* 阅读正文以 `RUI_FONT_READ` 的 38 px 为当前初始值，并按用户字号设置每档调整 4 px。它是可调整的阅读字号，不是所有页面的正文字号。

## 设置列表几何

* 根页列表项：96 px 高，项间 16 px；有副信息时文字第一行从行顶 8 px 开始，副信息从 54 px 开始。
* 前导图标：48 × 48 px，行内垂直居中；图标左边沿 x = 36。
* 图标与文字组间距：36 px；主文字起点 x = 120。
* 阅读设置二级页沿用 96 px 行高；尾部箭头使用 36 × 36 px 原生位图。
* 应用页 IconGrid 名称使用 32 px、40 px 行框；分页页码使用 32 px，完整卡片保持统一点击热区。
* 当前 684 × 1216 字体设置页直接列出可选字体，没有单独的“当前字体”标题；选中项通过字重与勾选图标表示。字体名使用 36 px，底部“保存”按钮使用 32 px。
* 已经抽象的字号对应 `include/rui_tokens.h` 的 `RUI_CAL_*` Token；新页面复用同一语义角色时应引用 Token。图标槽位、行框和热区需分别校对，不因为数值相同就合并为一个规则。

本表来自设置、首页和书库的 Figma 画板，并根据已刷入设备上的 MiSansVF 实机观察校准。若更换字体文件或显示驱动，需重新校验字面边界、行框和图标对齐后再更新本表。
