Fix clickable parent Part navigation in Calibre

This commit is contained in:
Kai Tan
2026-10-08 08:09:50 +08:00
parent a158b4e26c
commit 498b5d09ce
5 changed files with 86 additions and 2 deletions
+11
View File
@@ -48,3 +48,14 @@ Luna 翻译了 Gambling Man 的 45 个标题单元,45/45 占位符校验通过
渲染期间有一次 Calibre PDF 进程 SIGSEGV,重新生成后的最终两组输出成功。自动报告仍为 visual_review: pending,人工/agent 观察记录单独保存为 visual-review.json;截图生成本身不表示整本视觉验收通过。
OCR、扫描页图文提取、版面中间结构与可点击目录的后续大版本方案见 `doc/OCR_EPUB_ROADMAP.md`。
## 第三轮:Part 父级目录跳转修复
用户反馈点击“第 X 部:XX”时报“目的不存在”。原因是预处理给带子目录的 Part 链接添加了生成的 span,形成 `li > span > a`;href 本身存在,但 Calibre 将该父项解析成无目标的目录分组。此前检查了链接地址和目录层级,遗漏了阅读器对父项目标的实际解析。
现在 NAV 保留直接的 `li > a + ol` 结构,旧缓存中的生成包装也会在导航预处理时移除,保留链接内部的原有强调样式。已有译文可直接重新封装,无需重新调用翻译模型;已生成的旧 EPUB 需要重新构建。
- 45 项测试通过,新增旧缓存修复及 Calibre 实际解析的中文/双语回归;未安装 Calibre 时这两项集成测试明确跳过。
- 11 本书再次往返检查:格式还原失败 0,新增结构问题 0。
- Calibre 解析修复后的 Gambling Man 中文和双语样例,五个 Part 的目标均存在;在原生阅读器中实际点击第一部和第五部,均跳转到对应部标题,无错误弹窗。
- 新样例位于 `.work/part-link-fixed/`,沿用已验证译文,仍为 55/1,582 个单元的局部翻译;旧的 `.work/navigation-final-v4/` 仅保留为此前 QA 证据。