feat: 完成 Docker DOCX 与可选字体包部署链
This commit is contained in:
@@ -71,8 +71,20 @@ Docker 安装目标:
|
||||
/usr/local/bin/pandoc -> /opt/pandoc/3.9.0.2/bin/pandoc
|
||||
```
|
||||
|
||||
构建必须校验 SHA-256 后再解压。下载、校验和解压应位于同一构建层,不在
|
||||
最终镜像保留下载缓存。
|
||||
官方 Linux 二进制 tarball 实际只包含 `bin/pandoc`,不包含许可证和版权
|
||||
文件。Docker 构建会从同一个不可变版本标签 `3.9.0.2` 取得以下文件,并
|
||||
分别执行 SHA-256 校验后放入相同运行目录:
|
||||
|
||||
```text
|
||||
COPYING.md
|
||||
SHA-256:9D56CAC92294E206AF026A5502BEE0FED77200B08B51EC28AA63C9EFDA4DCFDD
|
||||
|
||||
COPYRIGHT
|
||||
SHA-256:842E33EF01625E93F85BEBB8BAC83AA570186B7AA77A09971257CC29F8F60740
|
||||
```
|
||||
|
||||
二进制归档、许可证和版权文件均在独立下载阶段获取与校验,最终镜像只
|
||||
复制 `/opt/pandoc/3.9.0.2/`,不保留下载缓存、Curl 或下载阶段依赖。
|
||||
|
||||
`v0.6.0` 正式验证范围为 Linux amd64。官方同时提供 arm64 包,但在完成
|
||||
Playwright、Pandoc 和 DOCX 全链路验证前,不宣称 arm64 发布支持。
|
||||
|
||||
+30
-2
@@ -362,6 +362,32 @@ Desktop 已统一 Markdown 保存/另存为、PDF 导出和 DOCX 导出的默认
|
||||
阻断保存对话框。状态持久化失败不会把已经成功写入的用户文件误报为保存
|
||||
失败。该优化作为独立提交完成,不与 FP3-C Docker 部署改动混合。
|
||||
|
||||
`v0.5.1` Web 与 Desktop 旧渲染引擎曾在整篇代码围栏全部标记为 JSON 时
|
||||
出现缩进视觉丢失;任一围栏改为其他语言后其余 JSON 又会恢复。使用原始
|
||||
问题文档在当前 `v0.6.0` Chromium 快速预览中验证,首次完整渲染的 14 个
|
||||
JSON 代码块均保留 2/4/6 级缩进,将首个围栏改为 `text` 后的增量渲染也
|
||||
保持正常。该问题标记为随 `v0.6.0` 渲染引擎重构消失,不再追加生产修复。
|
||||
|
||||
阶段 12D-FP3-C 已完成 Docker v0.6.0 DOCX 运行链和可选字体包挂载。镜像
|
||||
构建补齐统一语义文档、DOCX 主题映射、字体包注册器和 DOCX 引擎工作区,
|
||||
并将 Lua Filter 作为明确运行资产复制;独立下载阶段对 Pandoc `3.9.0.2`
|
||||
Linux amd64 二进制、GPL 许可证和版权文件分别执行固定 SHA-256 校验,
|
||||
最终运行镜像只保留 `/opt/pandoc/3.9.0.2/`,不包含下载工具或可选字体包。
|
||||
基于已验证 Chromium 运行层生成的验收镜像内容大小为 681,961,183 字节,
|
||||
以非 root `pwuser` 运行,DOCX capability 精确识别 Pandoc `3.9.0.2`。
|
||||
|
||||
Compose 通过 `MD_TO_PDF_FONT_PACK_DIR` 将宿主机字体包根目录只读挂载到
|
||||
`/app/.local/font-packs`,并以 `MD_TO_PDF_APP_VERSION=0.6.0` 执行兼容性
|
||||
判断。静态部署契约覆盖 DOCX workspace、Pandoc 版本与三组哈希、Lua
|
||||
Filter、只读挂载以及 Docker 构建上下文排除。统一真实门禁为
|
||||
`npm run verify:docker-font-pack`:空目录场景正常降级;有效
|
||||
`mdtp-serif-sc@1.0.0` 提供不可变缓存 WOFF2,并进入真实 DOCX 字体表和
|
||||
字体部件;篡改 WOFF2 后注册器拒绝整个字体包,主题 CSS 不再注入字体包,
|
||||
但 DOCX 仍通过主题字体安全降级并成功生成。三组隔离 Compose 容器、网络
|
||||
和临时目录均在验收后清理。全仓 94 个测试文件、480 项测试、类型检查、
|
||||
生产构建和 `git diff --check` 均通过。下一步 R4 进入 14 套主题深度视觉
|
||||
回归。
|
||||
|
||||
## 2. 已完成
|
||||
|
||||
### 2.1 项目骨架
|
||||
@@ -1320,8 +1346,10 @@ ECharts 第二阶段浏览器与 PDF 验证结果:
|
||||
- 阶段 12D-FP3-A:已完成独立字体包构建器、冻结配方、许可证与来源追踪、
|
||||
同版本不可变门禁和真实资产构建;
|
||||
- 阶段 12D-FP3-B:已完成独立用户级 NSIS 字体包、原子安装/升级/卸载、
|
||||
主安装器同目录哈希校验和显式静默开关;下一步 FP3-C 实现 Docker 可选
|
||||
挂载,最终由 R4 完成 14 套主题深度视觉回归;
|
||||
主安装器同目录哈希校验和显式静默开关;
|
||||
- 阶段 12D-FP3-C:已完成 Docker v0.6.0 DOCX/Pandoc 运行链、字体包只读
|
||||
可选挂载及空目录、有效包、损坏包三场景真实部署门禁;下一步由 R4 完成
|
||||
14 套主题深度视觉回归;
|
||||
- 阶段 13:完成 Word/WPS 双向互存、外部主题兼容、体积和正式发布验收。
|
||||
|
||||
每个阶段验收通过后创建一个独立提交,再进入下一阶段。当前阶段不得混入
|
||||
|
||||
Reference in New Issue
Block a user