Implements comprehensive validation before PPTX conversion to catch errors early. Includes element-level validation (colors, fonts, table consistency) and system-level validation (geometry, resources). Supports standalone check command and automatic validation during conversion.
1.9 KiB
1.9 KiB
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 和标准库
- 用户体验:提升开发效率,减少调试时间