Files
QRGen/CHANGELOG.md
T
Serendipity 05b1714628 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>
2026-06-18 11:21:27 +08:00

40 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog
## 0.1.0 (2026-06-17)
### Added
- **核心算法**:完整实现 ISO/IEC 18004 QR 码生成
- GF(2⁸) Galois 域运算(预计算 exp/log 表,0x11D 本原多项式)
- Reed-Solomon 纠错编码(动态生成多项式 + 多项式长除法 + 数据交错)
- 四种编码模式:数字 / 字母数字 / 字节 / 汉字 (Shift JIS)
- 字符串自动分段 + 最优模式选择
- 8 种标准掩码 + 四规则惩罚评分(连续同色/2×2方块/伪定位图案/暗模块占比)
- 格式信息 BCH(15,5) + 版本信息 BCH(18,6) 编码
- 40 版本 × 4 纠错级别完整容量表
- **CLI 命令行工具** (`qrgen`)
- PNG/SVG/终端 ASCII 三种输出
- 可调纠错级别、版本号、模块大小、白边
- 反色模式
- **GUI 桌面应用** (`qrgen-gui`)
- Tauri 2 + React 18 + TypeScript + TailwindCSS
- 7 种编码模式:文本 / URL / WiFi / vCard / Email / 电话 / SMS
- 实时预览(200ms 防抖,SVG 渲染)
- PNG/SVG 导出 + 复制到剪贴板
- 历史记录(最近 50 条,回填/删除/清空)
- 暗色模式(跟随系统)
- 磨砂玻璃效果 (backdrop-blur)
- **程序库** (`qr-core`)
- 零外部 QR 依赖(仅 image crate 用于 PNG 输出)
- 自动版本选择
- 完整 40 版本 × 四级纠错支持
### Technical
- Cargo workspace 三层架构 (core + cli + gui)
- qr-coreSerde 序列化支持(跨 IPC 传输)
- GUIReact Context + useReducer 状态管理
- CLIclap derive + anyhow 错误处理
- 69 个测试(54 单元 + 15 集成)
- NSIS Windows 安装包