fix: QR 扫描失败 + GUI 导出失败 — PNG margin + separator + fs 插件

🔴 QR 扫描失败根因 (2项):
- render/png: saturating_sub 导致 margin 区域映射到 finder 黑角,
  quiet zone 全黑,扫描器无法定位 QR
- matrix/patterns: 缺少右上 finder 左侧 + 左下 finder 顶部
  隔离带预留,数据模块破坏 finder 检测比率(1:1:3:1:1)

🔴 GUI 导出失败 (2项):
- gui/Cargo.toml + gui/lib.rs: 注册 tauri-plugin-fs 后端插件
  (前端 writeFile 调用缺少 Rust handler)
- capabilities: fs:allow-write-file + $HOME/** 路径 scope
  (ACL 默认不给 fs 写权限,需显式声明)

🔧 其他:
- ExportPanel: 导出失败显示红色错误信息(替代静默吞错)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-06-18 11:21:27 +08:00
parent 1e9c94eff9
commit 05b1714628
14 changed files with 7210 additions and 16 deletions
+2
View File
@@ -3,6 +3,7 @@
## 0.1.0 (2026-06-17)
### Added
- **核心算法**:完整实现 ISO/IEC 18004 QR 码生成
- GF(2⁸) Galois 域运算(预计算 exp/log 表,0x11D 本原多项式)
- Reed-Solomon 纠错编码(动态生成多项式 + 多项式长除法 + 数据交错)
@@ -29,6 +30,7 @@
- 完整 40 版本 × 四级纠错支持
### Technical
- Cargo workspace 三层架构 (core + cli + gui)
- qr-coreSerde 序列化支持(跨 IPC 传输)
- GUIReact Context + useReducer 状态管理