feat: 建立可选字体包协议与安全注册器
This commit is contained in:
+23
-2
@@ -272,6 +272,21 @@ Panose、字符集、字体族、间距和 Unicode/代码页签名,写入
|
||||
保留使用字形子集,这是客户端写回行为,不影响导出文件的首次打开和
|
||||
编辑门禁。
|
||||
|
||||
阶段 12D-FP1 已建立独立 `packages/font-pack-registry`,冻结可选字体包
|
||||
协议和安全发现边界。字体包使用
|
||||
`root/<pack-id>/<semver>/font-pack.json` 固定布局,清单声明应用兼容
|
||||
区间、许可文件、字体目标家族、别名、字重、样式以及同源 Web WOFF2 和
|
||||
DOCX 静态 TrueType 资源。注册器按根目录顺序和最高兼容版本确定可用包,
|
||||
使用完整 SemVer 比较,并对清单、普通文件、路径包含关系、符号链接、
|
||||
单资源/总容量、许可文件和 SHA-256 执行严格校验;实际读取资源时会再次
|
||||
验证大小与哈希,避免注册后文件被替换。候选解析按字体家族或别名、字重
|
||||
和斜体精确匹配,支持调用方显式指定字体包优先级;根目录缺失、版本不
|
||||
兼容、资源损坏、版本覆盖和字体面未提供均返回结构化诊断,缺少字体包
|
||||
不会阻断后续安全降级。当前尚未接入主题、Preview/PDF、DOCX、Desktop
|
||||
安装器或 Docker;FP2 将让 Web WOFF2 与 DOCX TTF 进入同一主题字体解析
|
||||
结果,并把字体包指纹纳入缓存和导出诊断。全仓 454 项测试、类型检查和
|
||||
生产构建通过。
|
||||
|
||||
## 2. 已完成
|
||||
|
||||
### 2.1 项目骨架
|
||||
@@ -1156,6 +1171,9 @@ ECharts 第二阶段浏览器与 PDF 验证结果:
|
||||
- `packages/document-visual-diff` 负责 Word/WPS/PDF 页面快照、文本与
|
||||
栅格差异、可配置视觉门限以及 JSON/HTML 验收报告;该包仅用于开发和
|
||||
发布验收,不进入应用运行时。
|
||||
- `packages/font-pack-registry` 负责可选字体包协议、版本兼容、安全发现、
|
||||
资源哈希与容量门禁、确定性版本选择和逻辑字体面匹配;FP1 尚未将它
|
||||
接入应用服务或发行包。
|
||||
- `packages/application/src/docx-export-service.ts` 负责 DOCX capability、
|
||||
并发排队、总超时、取消、跨端转换编排、错误码和耗时诊断。
|
||||
- `apps/desktop/src/desktop-application-controller.ts` 负责 Electron
|
||||
@@ -1215,8 +1233,11 @@ ECharts 第二阶段浏览器与 PDF 验证结果:
|
||||
编辑互存;
|
||||
- 阶段 12D-R3:已完成独立 PDF/DOCX 视觉差异引擎、精确行距、字体
|
||||
字重规范化及通用 SFNT 到 Word 字体元数据映射,并通过 Word/WPS
|
||||
原生视觉与可编辑性验收;下一步先对齐可选字体包架构,再由 R4 完成
|
||||
14 套主题深度视觉回归;
|
||||
原生视觉与可编辑性验收;
|
||||
- 阶段 12D-FP1:已完成可选字体包协议、安全注册器、版本/根目录优先级、
|
||||
资源双重校验和字体候选匹配;下一步 FP2 接入 Preview/PDF 与 DOCX
|
||||
同源字体解析,FP3 再实现独立 NSIS 字体包与 Docker 可选挂载,最终由
|
||||
R4 完成 14 套主题深度视觉回归;
|
||||
- 阶段 13:完成 Word/WPS 双向互存、外部主题兼容、体积和正式发布验收。
|
||||
|
||||
每个阶段验收通过后创建一个独立提交,再进入下一阶段。当前阶段不得混入
|
||||
|
||||
Reference in New Issue
Block a user