Files
matrix-screen-controller/各种归档/20261012_公交窄体字体验收/README.md
T

36 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 公交窄体首版验收
已制作、集成并部署“核桃公交窄体(推荐16px)”。字格 8×16,6763 个 GB2312 汉字、95 个可打印 ASCII、26 个标点/符号,共 6884 个码位。完整字模、42 项逐字修订、离线构建脚本、锁文件、wheel、上游许可和校验信息保存在 `核桃派软件源代码/font_sources/walnut-bus-8x16/`。字体本体为 `核桃派软件源代码/app/fonts/bundled/WalnutBus8x16.ttf`,摘要见 manifest 与 summary。
## 实际验证
- 本机 Python 相关套件 68 项及补充的新字体模板/裁切/回退测试 1 项通过;Node 字体选择器、场景、图层 24 项通过。
- 全部 6884 个字符在 16px 下与字模逐像素一致,alpha 只有 0/255;非空字符无空白、无越格,最后一列保留间隔。32/48/64px 的重点字与整数倍最近邻放大一致。
- 14 页最终字形图册分批查看;重复字形只有空格/全角空格。密度最高 32 字记录在 audit 中;复杂字简化边界保留,不以覆盖检查代替辨识率实验。
- 带中文和空格的隔离副本从新建字体 venv、本地锁定 wheel 重建,TTF 字节一致,完整校样再次通过。
- 网页实际搜索、选择、16px 设置及三行最终合成预览已检查,见 `网页最终预览.jpg`。截图来自本机 mock 页面,“未连接”状态仅指本机 mock 的设备网络信息,不代表部署失败。
- 核桃派隔离候选中累计 68 项 Python 测试通过。1 项 Node 跨语言比较因板端没有 Node 跳过,同项已在本机通过,没有为本次字体任务增加板端 Node 依赖。
- 部署前后 446 个原有持久文件摘要一致,只新增 1 个字体文件。真实 stop/start 的运行目录保留检查通过;后续真实 restart 后 447 个持久文件摘要一致,字体目录仍可用。
- 设备实际 `/api/preview/text-layer` 返回的五组 PNG 在重启前后字节一致,解码后与本机预览逐像素一致。`device-*.png` 是设备原始透明预览;`设备渲染样张.png` 是关闭平滑的放大排版,不是摄像头画面。
- H618 真实驱动仍可用,读取状态时最后错误、OE 错误及 safeoff 错误均为空。驱动参数和扫描实现未改;不据启动时刷新率采样值声称实屏视觉验收或刷新性能验收通过。
正式 VERSION 保持原值,没有导出 OTA/IMG、没有修改或发布 App。功能更新时间为 `2026-10-12T11:09+08:00`。未启动摄像头、未切换实屏测试图案,也没有物理接线或断电操作。
## 已修复的测试准备问题
首次 SFTP 直传任务运行目录失败:父目录仅 root 可访问,子目录 chown 无法绕过父目录权限。改用具名 `/var/tmp/` 暂存后由 sudo 转入任务目录,立即删除上传文件,没有放宽生产目录权限。
隔离候选首次遗漏 VERSION 导致测试无法收集,补齐后有 66 项通过、1 项 Node 比较跳过;另一个测试因遗漏 systemd 文件失败。补齐原生产 systemd 文件后定向重测该项通过。均未在失败状态下切换生产服务。记录中的旧部署路径来自板端历史 `.pyc` 的 traceback,不是对旧工作区的构建依赖。
可重复经验已更新到 `测试相关资料/如何测试/核桃派点阵屏控制服务测试流程.md` 的 TEST-BUS-FONT 条目。接缝合并、bearing、构建锁定和复杂字边界也记录在字体源目录 README。
## 回滚与清理
`rollback.tar.gz` 保存部署前被替换的程序文件,`deployed-files.json` 登记本轮程序文件;回滚时停服务、恢复 backup 中的旧文件,再移除登记的新增程序文件,然后启动并等待健康检查。持久字体、用户配置和用户资源不删除;保留运行目录,不修改 systemd unit。该备份不含设备凭据。
远端本轮候选、测试数据、程序备份和日志在归档拉回后清理,具体路径和结果见 `cleanup.json`。本机持续使用的字体构建环境保留在项目专用 `.local/font-build/`。临时网页与 mock 服务已关闭。本机 10 个具名任务目录及 7 个一次性辅助脚本的批量清理被安全策略拒绝,工具仅返回 blocked by policy,没有提供进一步原因;未换手段重试。本机这些文件仍在,已无用途,可由用户按 `cleanup.json` 的完整仓库相对路径手动删除;不得删除其中未列出的材料、持续环境或用户数据。
## 保留边界
8 列汉字不是标准印刷字形,罕用密集字(如鹤、警、藏、赢、鬻及密度榜中的字符)仍依赖简化和上下文;尚未做真实用户逐字辨识率测试。非 16px 整数倍字号不保证二值边缘。网页最终帧作为本轮视觉依据,不记录为物理实屏观察通过。