- 支持 .xls (BIFF8) 和 .xlsx 格式 - GUI 文件选择 + 命令行双模式 - 智能结构验证(重复/间隙/空单元格检测) - 逆时针 PinMAP → 顺时针 PinList 自动转换 - Python 标准库,零第三方依赖
36 lines
1.2 KiB
Markdown
36 lines
1.2 KiB
Markdown
# Changelog
|
||
|
||
## [v1.0.0] - 2026-05-25
|
||
|
||
### 🎉 首次发布
|
||
|
||
#### 功能
|
||
- **PinMAP 解析**:支持方形/长方形封装,左上角为 1 脚,逆时针排序
|
||
- **格式支持**:兼容 `.xls`(BIFF8 引擎)和 `.xlsx` 两种 Excel 格式
|
||
- **智能验证**:自动检测重复引脚、间隙、空单元格等结构问题
|
||
- **PinList 生成**:按顺时针顺序输出引脚序号列表
|
||
- **GUI 模式**:支持 tkinter 文件选择器,零命令行使用
|
||
- **命令行模式**:`python main.py input.xlsx` 快速转换
|
||
|
||
#### 技术
|
||
- Python 标准库,零第三方依赖
|
||
- 自定义 BIFF8 引擎解析 `.xls` 文件(~19KB)
|
||
- `openpyxl` 读写 `.xlsx` 文件
|
||
- 模块化架构:解析 → 验证 → 生成 → 输出
|
||
|
||
#### 架构
|
||
- `main.py` — 入口与流程编排
|
||
- `xls_reader.py` — BIFF8 `.xls` 解析引擎
|
||
- `xlsx_reader.py` — `.xlsx` 解析器
|
||
- `pinmap_parser.py` — PinMAP 结构解析
|
||
- `validator.py` — 结构验证与错误检测
|
||
- `pinlist_generator.py` — PinList 生成器
|
||
- `xlsx_writer.py` — `.xlsx` 输出
|
||
- `file_selector.py` — tkinter 文件选择器
|
||
- `models.py` — 数据模型
|
||
- `utils.py` — 工具函数
|
||
|
||
#### 测试
|
||
- 6 个测试夹具覆盖正常/异常场景
|
||
- 测试报告:`Test/test_report.md`
|