feat: 建立可复现字体包构建链
This commit is contained in:
+24
-2
@@ -305,6 +305,24 @@ DOCX 字体源总量调整为 48 MiB,与已验证的原生中文 TrueType 资
|
||||
权限校验。字体二进制、独立安装包和 Docker 分发尚未进入仓库;下一步
|
||||
FP3 只处理独立 NSIS 字体包、Docker 可选挂载及其安装/升级/卸载门禁。
|
||||
|
||||
阶段 12D-FP3-A 已建立独立 `packages/font-pack-builder` 和首个冻结字体包
|
||||
配方 `mdtp-serif-sc@1.0.0`。主仓库只保存配方、OFL-1.1 许可证、上游提交
|
||||
与派生说明,不保存约 41.37 MiB 字体二进制;发布人员从 Git 忽略的受信任
|
||||
源目录提供 Regular 400、Bold 700 两组静态 TTF/WOFF2。构建器会校验
|
||||
普通文件、路径包含关系、大小、SHA-256、WOFF2/TrueType 格式、字体内部
|
||||
家族、字重、Web/DOCX 元数据一致性及文档嵌入权限,再原子组装版本化
|
||||
`font-pack.json` 目录。相同版本内容一致时重复构建保持幂等,内容不同时
|
||||
拒绝覆盖;字体包只匹配 `FandolSong` 与 `Mdpdf Fandol Song`,不会通过
|
||||
`SimSun` 等通用别名错误替换仿宋、黑体、楷体或外部主题字体。
|
||||
|
||||
统一命令为 `npm run build:font-pack` 和 `npm run verify:font-pack`,默认
|
||||
产物写入被 Git 忽略的 `output/font-packs/`。真实资产构建结果为
|
||||
41,371,798 字节,两字形面均为 `MdTP Serif SC`、`fsType=0`、可安装嵌入;
|
||||
应用层验收确认政企红头标准文件同时取得两组 WOFF2 和静态 TTF,其余三个
|
||||
字体面继续使用主题安全降级。全仓 461 项测试、类型检查和生产构建通过。
|
||||
本阶段未修改 NSIS 或 Docker;下一步 FP3-B 实现独立用户级字体包安装、
|
||||
升级、卸载和主安装器同目录可选入口。
|
||||
|
||||
## 2. 已完成
|
||||
|
||||
### 2.1 项目骨架
|
||||
@@ -1193,6 +1211,9 @@ ECharts 第二阶段浏览器与 PDF 验证结果:
|
||||
资源哈希与容量门禁、确定性版本选择和逻辑字体面匹配;应用层已将同一
|
||||
解析结果用于主题 CSS 的 WOFF2 和 DOCX 的静态 TrueType,发行资产与
|
||||
安装逻辑留在 FP3。
|
||||
- `packages/font-pack-builder` 负责从仓库外冻结资源构建版本化字体包,
|
||||
校验输入哈希、字体格式、内部元数据、嵌入权限、同版本不可变性并生成
|
||||
可供注册器再次验证的构建报告;字体二进制和产物目录均不进入 Git。
|
||||
- `packages/application/src/docx-export-service.ts` 负责 DOCX capability、
|
||||
并发排队、总超时、取消、跨端转换编排、错误码和耗时诊断。
|
||||
- `apps/desktop/src/desktop-application-controller.ts` 负责 Electron
|
||||
@@ -1257,8 +1278,9 @@ ECharts 第二阶段浏览器与 PDF 验证结果:
|
||||
资源双重校验和字体候选匹配;
|
||||
- 阶段 12D-FP2:已完成 Preview/PDF WOFF2 与 DOCX 静态 TrueType 的
|
||||
同源字体解析、跨端受限资源入口、缓存指纹、降级诊断和真实字体包验证;
|
||||
下一步 FP3 实现独立 NSIS 字体包与 Docker 可选挂载,最终由 R4 完成
|
||||
14 套主题深度视觉回归;
|
||||
- 阶段 12D-FP3-A:已完成独立字体包构建器、冻结配方、许可证与来源追踪、
|
||||
同版本不可变门禁和真实资产构建;下一步 FP3-B 实现独立 NSIS 字体包,
|
||||
FP3-C 再实现 Docker 可选挂载,最终由 R4 完成 14 套主题深度视觉回归;
|
||||
- 阶段 13:完成 Word/WPS 双向互存、外部主题兼容、体积和正式发布验收。
|
||||
|
||||
每个阶段验收通过后创建一个独立提交,再进入下一阶段。当前阶段不得混入
|
||||
|
||||
Reference in New Issue
Block a user