diff --git a/README.md b/README.md index 3cb0f7d..10e86f9 100644 --- a/README.md +++ b/README.md @@ -28,10 +28,10 @@ QRGen 是 **从零手写** 的 QR 码(二维码)生成器,完整实现 ISO graph TB subgraph Frontend["React 前端 (GUI)"] App[App.tsx 三栏布局] - Modes[7 种模式表单
文本/URL/WiFi/vCard/Email/电话/SMS] - Preview[实时预览区
SVG 渲染] - Export[导出面板
PNG/SVG/复制] - History[历史记录面板
回填/删除] + Modes[7 种模式表单] + Preview[实时预览区] + Export[导出面板] + History[历史记录] App --> Modes App --> Preview App --> Export @@ -39,23 +39,23 @@ graph TB end subgraph Web["Web 服务 (axum)"] - HTML[内嵌 HTML 页面
三栏 + 7 模式 + 实时预览] - API[/api/qr → PNG/SVG] + HTML[内嵌 HTML 页面] + API[GET /api/qr] end subgraph CLI["CLI 命令行"] Clap[clap 参数解析] end - subgraph IPC["Tauri IPC"] + subgraph IPC["Tauri IPC 桥接"] Commands[5 个 Tauri commands] end subgraph Core["Rust core 库 (qr-core)"] - Encoder[编码层
mode / segment / bitstream] - ECC[纠错层
Galois GF2^8 / Reed-Solomon] - Matrix[矩阵层
patterns / placement / mask] - Render[渲染层
PNG / SVG / ASCII] + Encoder[编码层] + ECC[纠错层] + Matrix[矩阵层] + Render[渲染层] Encoder --> ECC ECC --> Matrix Matrix --> Render @@ -82,14 +82,14 @@ sequenceDiagram U->>UI: 输入文本 UI->>Q: encode(text, config) - Q->>E: 分析字符集 → 自动分段 - E->>E: 模式编码 (数字/字母/字节/汉字) + Q->>E: 分析字符集, 自动分段 + E->>E: 模式编码 E->>RS: 数据码字 - RS->>RS: 分组 + 纠错码字生成 + 交错 + RS->>RS: 纠错码字生成 + 交错 RS->>M: 最终码字序列 - M->>M: 功能图案 + 蛇形数据排列 + 掩码评分 - M->>R: QR 矩阵 (bool bitmap) - R->>UI: PNG bytes / SVG string / ASCII string + M->>M: 功能图案 + 蛇形排列 + 掩码 + M->>R: QR 矩阵 + R->>UI: PNG / SVG / ASCII ``` ## 功能