wangdl bae6ef5726 feat: M3 completion — event buffer, FFI search/anchor, PDF strategy, quality fixes
Rust Core:
- events: global Mutex-buffered event queue (push/export/clear/update_position)
- image_meta: use ImageReader::format() for real decoded format instead of extension
- search: change match_start/match_end usize→u64 for FFI compatibility
- epub/pdf: module-level placeholder comments

FFI (UDL exposed, 12 total functions):
- Added: search_markdown_blocks, search_text_content, create_note_anchor
- Added: push_reading_event, update_reading_position, export_pending_events,
  clear_exported_events

Docs:
- README: synced DocumentBlock model (Table.headers + HorizontalRule),
  simplified dependency recommendations, removed nonexistent doc references
- docs/pdf-strategy.md: PDFKit vs PDFium vs MuPDF evaluation, 5 decisions,
  platform strategy matrix, roadmap

Build:
- .cargo/config.toml: cargo xtask alias
- xtask: CLI implementation (test/build-ios/fixtures commands)
- fixtures: markdown/sample.md (9 block types), text/sample.txt
- XCFramework rebuilt, Swift bindings regenerated (1977 lines)

58 tests pass, zero warnings.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 21:23:26 +08:00

30 lines
565 B
Markdown

# zhixi-document-runtime
A cross-platform document reading kernel.
## 核心原则
1. 原文件预览和 AI 解析彻底分离。
2. Rust Core 不负责网络请求。
3. Rust Core 不直接访问后端 API。
## 支持的格式
| 格式 | 预览方式 | 状态 |
| --- | --- | --- |
| Markdown | 内置阅读 | 已支持 |
| TXT | 内置阅读 | 已支持 |
| 图片 | 内置查看 | 已支持 |
> 第一版目标不是"支持所有文件预览",而是先建立跨平台文档内核。
```rust
fn main() {
println!("Hello, zhixi!");
}
```
---
*EOF*