# 项目计划(2026-02-07) ## 1. 当前状态 ### 1.1 已完成 - Web 应用主链路可用:字体选择、预览、收藏、导出(SVG/PNG) - 字体元数据自动生成:`scripts/generate-font-list.py` - 预览性能策略已落地:防抖、批处理、并发、懒加载、几何缓存 - Python CLI 两条脚本可独立运行:`font2svg.py`、`pic2svg.py` ### 1.2 主要风险 - 预览仍以 `opentype.js` 直出为主,HarfBuzz 高级模式未接入主流程 - `frontend/src/App.test.vue` 非标准测试框架用例,自动化覆盖不足 - 前端未配置统一 lint 脚本,质量门禁不完整 ## 2. 迭代目标 ## M1:工程质量门禁补齐(优先级 P0) - 增加 `lint`、`typecheck`、`test` 统一脚本 - 引入标准测试框架(Vitest + Vue Test Utils) - 产出最小可用测试集(store / utils / 关键组件) 验收标准: - `pnpm -C frontend run lint` - `pnpm -C frontend run typecheck` - `pnpm -C frontend run test` - 三条命令均稳定通过 ## M2:预览与导出一致性加强(优先级 P0) - 统一预览与导出的文本 shaping 策略 - 对比 `font2svg.py` 输出,建立回归样例 - 处理复杂脚本、连字、组合字符边界情况 验收标准: - 关键样例(中英文混排、多行、字距)偏差可控 - 导出结果与预览视觉一致 ## M3:大字体库性能优化(优先级 P1) - 增加字体对象 LRU 缓存与内存上限策略 - 优化 `fonts.json` 增量生成能力 - 导出阶段增加并发与失败重试上限 验收标准: - 100+ 字体时首屏可交互时间维持稳定 - 批量导出失败率下降 ## M4:文档与运维完善(优先级 P1) - 保持 `README.md` / `USAGE.md` / `DETAIL-DESIGN.md` 同步 - 补充发布流程与版本变更记录模板 ## 3. 执行原则 - 小步提交:每次改动聚焦单一目标 - 先验证再交付:测试、类型检查、lint 必跑 - 文档与代码同步更新 ## 4. 里程碑建议 1. 第 1 周:完成 M1 2. 第 2 周:完成 M2 3. 第 3 周:完成 M3、M4