# 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