## Why 用户在编写 YAML 演示文稿源文件时,经常遇到元素超出页面范围、图片文件路径错误、语法问题等错误,这些问题只有在转换成 PPTX 后打开查看才能发现,导致需要反复修改和转换,效率低下。需要提供一个验证功能,在转换前检查 YAML 文件的各种潜在问题,让用户能够提前发现并修复错误。 ## What Changes - 添加 YAML 文件验证功能,支持多层次的检查 - 结构验证:必需字段、数据类型、枚举值 - 几何验证:元素边界、页面范围检查 - 资源验证:图片文件、模板文件存在性 - 样式验证:颜色格式、字体大小合理性 - 添加独立的 `check` 子命令:`yaml2pptx.py check input.yaml` - 添加转换前自动检查选项:默认启用,可通过 `--no-check` 跳过 - 实现分级的错误报告系统 - ERROR:阻止转换的严重问题(文件不存在、语法错误、关键参数缺失) - WARNING:影响视觉效果的问题(元素超出页面、字体太小) - INFO:优化建议 - 输出清晰的命令行报告,显示问题位置(幻灯片、元素)和具体描述 ## Capabilities ### New Capabilities - `yaml-validation`: YAML 演示文稿文件的验证能力,包括结构验证、几何验证、资源验证和样式验证 ### Modified Capabilities 无。这是新增功能,不修改现有能力的需求。 ## Impact - **主程序**:修改 `yaml2pptx.py`,添加 `check` 子命令和 `--no-check` 选项 - **新增模块**:创建验证器模块(建议在 `validators/` 目录下) - 结构验证器 - 几何验证器 - 资源验证器 - 样式验证器 - **现有功能**:不影响现有的转换功能,验证是可选的 - **依赖**:无新增外部依赖,使用现有的 PyYAML 和标准库 - **用户体验**:提升开发效率,减少调试时间