Files
TrueGrowth/openspec/changes/archive/2026-04-29-refactor-ppt-image-first-editing/design.md

19 lines
1.6 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.
## Context
现有 PPT 生成先创建 Frame 和可编辑文本再为部分页面生成“配图”。用户现在期望由图片模型直接生成包含文字与背景的完整幻灯片页Frame 负责页面管理、预览、播放和导出。
## Decisions
- PPT 页面的主数据模型改为“Frame + 一张整页图片 + 生成提示词”;旧 `pptMeta.imagePrompt` 只作为兼容读取,新增语义字段用于整页重生成提示词。
- PPT 编辑面板使用当前页整图 URL 做缩略预览,避免对每个 Frame 做 canvas 截图,降低内存与渲染成本。
- 重新生成复用现有 AI 图片生成弹窗和任务队列,传入 `targetFrameId`、Frame 尺寸、自动回填和替换目标,避免新增独立生成流程。
- 回填采用成功后替换:新图生成并可插入时才删除旧整页图;失败或取消时保留旧图。
- Deck 导出继续复用现有 `ppt-export-service`,但 UI 只保留“导出所有 PPT 页面”。
## Risks / Trade-offs
- 整页图片不可逐字编辑;这是本次改造的预期取舍,用更简单的重生成替代细粒度编辑。
- 老数据可能仍包含文本元素、背景图或旧配图占位;实现时需要兼容展示,并优先按新整页图识别预览与替换。
- 图片任务异步完成,替换逻辑必须幂等,避免同一任务重复插入或删除用户后续手动调整的内容。
## Migration
- 不做批量数据迁移;打开旧 PPT Frame 时按旧 `pptMeta.imagePrompt` 回填为重生成提示词。
- 已存在的 `backgroundUrl` 不再显示编辑入口;导出旧内容仍按画布现状处理。