DOC-401 PDF 阅读方案评估 #23

Closed
opened 2026-05-30 19:56:07 +08:00 by wangdl · 2 comments
Owner

评估 PDFKit、QuickLook、PDFium、MuPDF 在知习中的使用边界。

必须回答:iOS 第一版是否继续使用 PDFKit、Rust 是否需要接 PDFium、PDF 文本选择是否由平台能力承担、PDF 搜索是否后置做、扫描 PDF 和 OCR 是否暂缓

输出:docs/pdf-strategy.md

验收标准:文档存在、方案决策明确、有后续路线图

评估 PDFKit、QuickLook、PDFium、MuPDF 在知习中的使用边界。 必须回答:iOS 第一版是否继续使用 PDFKit、Rust 是否需要接 PDFium、PDF 文本选择是否由平台能力承担、PDF 搜索是否后置做、扫描 PDF 和 OCR 是否暂缓 输出:docs/pdf-strategy.md 验收标准:文档存在、方案决策明确、有后续路线图
wangdl added this to the M4:PDF / Office 预览边界完善 milestone 2026-05-30 19:56:07 +08:00
wangdl added the
priority:p1
type:research
area:pdf
labels 2026-05-30 19:56:07 +08:00
Author
Owner

完成 (2026-06-02)

已编写 docs/pdf-strategy.md

5 个核心决策

  1. iOS 继续用 PDFKit / QuickLook — 零依赖,系统内置,质量高
  2. Rust 暂不接 PDFium — 增加 ~15MB/平台 包体但不创造足够价值
  3. 文本选择由平台承担 — PDFKit (iOS)、PdfRenderer (Android)
  4. PDF 搜索后置 — 待文本提取方案确定后再做
  5. 扫描 PDF / OCR 暂缓 — 不在知习范围

方案对比

对比了 QuickLook / PDFKit / pdfium-render / MuPDF 四种方案,从集成成本、包体、文本提取、跨平台复用等维度评估。

路线图

  • M3 QuickLook + ReadingPosition::Pdf
  • M4 ● 本文档
  • M5 ○ iOS 迁移 PDFView(获得文本提取 + 页码回调)
  • M6+ ○ 评估 PDFium(Android 需求驱动)

不做的

  • PDFium 集成 / PDF 渲染 / 文本提取 / 标注 / OCR
## 完成 (2026-06-02) 已编写 **`docs/pdf-strategy.md`**。 ### 5 个核心决策 1. **iOS 继续用 PDFKit / QuickLook** — 零依赖,系统内置,质量高 2. **Rust 暂不接 PDFium** — 增加 ~15MB/平台 包体但不创造足够价值 3. **文本选择由平台承担** — PDFKit (iOS)、PdfRenderer (Android) 4. **PDF 搜索后置** — 待文本提取方案确定后再做 5. **扫描 PDF / OCR 暂缓** — 不在知习范围 ### 方案对比 对比了 QuickLook / PDFKit / pdfium-render / MuPDF 四种方案,从集成成本、包体、文本提取、跨平台复用等维度评估。 ### 路线图 - M3 ✅ QuickLook + ReadingPosition::Pdf - M4 ● 本文档 - M5 ○ iOS 迁移 PDFView(获得文本提取 + 页码回调) - M6+ ○ 评估 PDFium(Android 需求驱动) ### 不做的 - PDFium 集成 / PDF 渲染 / 文本提取 / 标注 / OCR
Author
Owner

关闭 — 被新 issue 替代

DOC-401 PDF 策略 → DOC-FULL-015。详细工作在新 DOC-FULL issue 中。

## 关闭 — 被新 issue 替代 DOC-401 PDF 策略 → DOC-FULL-015。详细工作在新 DOC-FULL issue 中。
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wangdl/zhixi-document-runtime#23
No description provided.