Files
skills/doc-to-tables/README.md
T
hmo 04db423416 Initial commit: skills library
- 70 skills with code and documentation
- Add .gitignore (ignore __pycache__, output/, temp/, venv/)
- Clean up test intermediates and caches
2026-04-26 19:27:40 +08:00

152 lines
3.9 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.
# DOC to Tables Skill
## 简介
将Word文档(.docx)转换为结构化Markdown表格,再生成专业HTML表格文件的完整工作流技能。专门用于处理比赛获奖名单、考级成绩、荣誉证书等非结构化文档的整理工作。
## 安装依赖
### 必需依赖
```bash
# 安装pandoc (用于DOCX转Markdown)
# Windows: 从 https://pandoc.org/installing.html 下载安装
# macOS: brew install pandoc
# Linux: sudo apt-get install pandoc
```
### 可选依赖
```bash
# 如果需要PDF生成功能
pip install fpdf2
```
## 使用方法
### 基本用法
```bash
cd .opencode/skills/doc-to-tables/scripts
python doc_to_tables.py "input.docx" "output"
```
这将生成:
- `output_md.md` - 结构化Markdown文件
- `output_html.html` - 专业HTML表格文件
### 高级选项
```bash
# 自定义列宽比例
python doc_to_tables.py "input.docx" "output" --three-col-widths "25,50,25" --two-col-widths "60,40"
# 不处理教师奖项(保留原始格式)
python doc_to_tables.py "input.docx" "output" --no-process-teacher-awards
# 生成带表头的HTML(默认无表头)
python doc_to_tables.py "input.docx" "output" --with-headers
```
## 典型使用场景
### 1. 音乐比赛获奖整理
**输入**:包含多个钢琴比赛获奖名单的Word文档
**输出**
- Markdown表格按比赛分类,包含学生、奖项、指导教师
- HTML表格可直接用于制作年度喜报海报
### 2. 考级成绩汇总
**输入**:英皇、音协等考级成绩Word文档
**输出**
- 结构化表格包含学生姓名、性别、级别、分数、评级、指导教师
- 专业HTML格式适合打印和展示
### 3. 年度汇总报告
**输入**:年度各项活动获奖情况Word文档
**输出**
- 按活动类型分类的标准化表格
- 可直接导入Photoshop进行海报设计
## 技术特点
### ✅ 智能数据处理
- **跨比赛匹配**:自动关联同一学生在不同比赛中的指导教师
- **数据去重**:相同奖项的教师合并显示,避免重复
- **缺失值处理**:缺失的指导教师信息留空,方便后续补充
### ✅ 专业格式输出
- **Markdown兼容**:在Obsidian等编辑器中完美显示
- **HTML响应式**:表格自适应任何屏幕尺寸
- **精确列宽控制**:三列表格(20%/60%/20%),两列表格(70%/30%)
- **打印友好**:支持直接"打印为PDF"
### ✅ 错误处理
- 自动检测和修复常见格式问题
- 保留原始数据完整性
- 详细的错误提示和日志
## 示例
### 输入Word文档内容:
```
###### 英国(牛津)2025国际钢琴公开赛-深圳赛区获奖名单
许和欣 一等奖
蔡达然 一等奖
张靖彤 一等奖
李芊妤 二等奖
朱梓安 二等奖
```
### 输出Markdown
```markdown
#### **英国(牛津)2025国际钢琴公开赛-深圳赛区获奖名单**
|获奖学生|奖项|指导老师|
|---|---|---|
|许和欣|一等奖||
|蔡达然|一等奖||
|张靖彤|一等奖||
|李芊妤|二等奖||
|朱梓安|二等奖||
```
### 输出HTML
专业的HTML表格,可直接用于海报制作。
## 配置选项
配置文件位于:`config/settings.json`
可自定义:
- 默认列宽比例
- 是否处理教师奖项
- 输出格式偏好
- 依赖项设置
## 扩展性
此技能支持轻松扩展:
- **多格式输入**Excel、PDF、PPT等
- **自定义样式**:不同的CSS主题
- **批量处理**:自动化处理多个文件
- **多语言支持**:中文、英文、日文等
## 故障排除
### 常见问题
1. **"pandoc not found"**:确保已安装pandoc并添加到PATH
2. **中文乱码**:确保系统支持中文编码,使用UTF-8
3. **表格格式错误**:检查源文档的标题层级是否正确
### 调试模式
```bash
# 启用详细日志
python doc_to_tables.py --debug "input.docx" "output"
```
## 版本历史
- **v1.0.0**:初始版本,支持基本的DOCX到表格转换
- **计划v1.1.0**:支持Excel输入,批量处理功能
## 许可证
MIT License
## 作者
小小莫 - OhMyOpenCode AI Manager