移除图片 fit 和 background 参数支持,简化图片渲染逻辑。系统恢复到直接使用 python-pptx 原生图片添加功能,图片将被拉伸到指定尺寸。 变更内容: - 移除 ImageElement 的 fit 和 background 字段 - 移除 metadata.dpi 配置 - 删除 utils/image_utils.py 图片处理工具模块 - 删除 validators/image_config.py 验证器 - 简化 PPTX 和 HTML 渲染器的图片处理逻辑 - HTML 渲染器使用硬编码 DPI=96(Web 标准) - 删除相关测试文件(单元测试、集成测试、e2e 测试) - 更新规格文档和用户文档 - 保留 Pillow 依赖用于未来可能的图片处理需求 影响: - 删除 11 个文件 - 修改 10 个文件 - 净减少 1558 行代码 - 所有 402 个测试通过 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2.7 KiB
2.7 KiB
移除图片适配模式功能
Why
图片适配模式功能已实现但尚未上线使用,经过评估决定移除该功能以简化系统复杂度。移除后系统将恢复到更简单直接的图片渲染方式:直接使用 python-pptx 的原生图片添加功能,图片会被拉伸到指定尺寸。
What Changes
- BREAKING 移除图片元素的
fit参数(stretch、contain、cover、center 四种模式) - BREAKING 移除图片元素的
background参数(背景色填充) - BREAKING 移除文档级的
metadata.dpi配置 - BREAKING 删除
utils/image_utils.py模块(图片处理工具) - BREAKING 删除
validators/image_config.py模块(图片配置验证器) - 重写
renderers/pptx_renderer.py的_render_image()方法,恢复简单实现 - 简化
renderers/html_renderer.py的render_image()方法,移除 fit/background 处理 - 简化
core/elements.py的ImageElement类,移除 fit/background 字段 - 简化
core/presentation.py的Presentation类,移除 dpi 配置读取 - 保留 Pillow 依赖(留作未来可能的其他用途)
- HTML 渲染器使用硬编码的 DPI=96(Web 标准,无需用户配置)
Capabilities
Modified Capabilities
element-rendering: 移除图片元素的 fit 和 background 参数支持,恢复到基础图片渲染html-rendering: 移除图片元素的 fit 和 background 参数支持,简化 HTML 图片渲染
Impact
代码变更
core/elements.py: ImageElement 移除 fit 和 background 字段及验证逻辑core/presentation.py: Presentation 移除 dpi 配置读取renderers/pptx_renderer.py: 重写 _render_image() 方法,移除 Pillow 图片处理和 fit 模式逻辑renderers/html_renderer.py: 简化 render_image() 方法,移除 fit 模式映射和背景色容器yaml2pptx.py: 移除传递 dpi 参数到 PptxGeneratorpreview/server.py: 移除传递 dpi 参数到 HtmlRenderervalidators/validator.py: 移除对 image_config 的引用
删除的文件
utils/image_utils.py: 整个文件删除validators/image_config.py: 整个文件删除tests/unit/test_image_utils.py: 删除tests/unit/test_validators/test_image_config.py: 删除tests/integration/test_image_fit_modes.py: 删除openspec/specs/image-fit-modes/: 整个规格目录删除
API 变更
- YAML 语法移除:
- 图片元素不再支持
fit字段 - 图片元素不再支持
background字段 - metadata 层级不再支持
dpi字段
- 图片元素不再支持
依赖变更
- Pillow 依赖保留(在 pyproject.toml 中),用于未来可能的图片处理需求
文档变更
README.md: 移除图片适配模式使用说明README_DEV.md: 移除图片处理架构说明