基于 AI 自动分析文档内容,智能规划并生成多风格高清 PPT 图片,支持可选转场视频和交互式播放体验。
PPT 生成器 Pro - 克劳德代码 Skill → 名称 名称 名称 名称 名称 名称 名称 名称 名称 名称 名称 名称 名称 名称 名称 基于 基于 基是一项面向实际任务的技能。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
必需:
GEMINI_API_KEY: Google AI API 密钥(用于生成 PPT 图片)可选(用于视频功能):
KLING_ACCESS_KEY: 可灵 AI Access KeyKLING_SECRET_KEY: 可灵 AI Secret Keypip install google-genai pillow python-dotenv
# macOS brew install ffmpeg # Ubuntu/Debian sudo apt-get install ffmpeg
/ppt-generator-pro
或直接告诉 Claude:
我想基于以下文档生成一个 5 页的 PPT,使用渐变毛玻璃风格。 [文档内容...]
选项 A: 文档路径
用户: 基于 my-document.md 生成 PPT → 使用 Read 工具读取文件内容
选项 B: 直接文本
用户: 我想生成一个关于 AI 产品设计的 PPT 主要内容: 1. 现状分析 2. 设计原则 3. 案例研究
选项 C: 主动询问
如果用户未提供内容,询问: "请提供文档路径或直接粘贴文档内容"
扫描 styles/ 目录,列出可用风格:
# 自动检测风格文件 styles = ['gradient-glass.md', 'vector-illustration.md']
如果有多个风格,使用 AskUserQuestion:
问题: 请选择 PPT 风格 选项: - 渐变毛玻璃卡片风格(科技感、商务演示) - 矢量插画风格(温暖、教育培训)
使用 AskUserQuestion 询问:
问题: 希望生成多少页 PPT? 选项: - 5 页(5 分钟演讲) - 5-10 页(10-15 分钟演讲) - 10-15 页(20-30 分钟演讲) - 20-25 页(45-60 分钟演讲)
问题: 选择图片分辨率 选项: - 2K (2752x1536) - 推荐,快速生成 - 4K (5504x3072) - 高质量,适合打印
如果配置了可灵 AI 密钥,询问:
问题: 是否生成转场视频? 选项: - 仅图片(快速) - 图片 + 转场视频(完整体验)
根据页数范围,智能规划每一页内容:
5 页版本:
5-10 页版本:
10-15 页版本:
20-25 页版本:
创建 JSON 文件:
{
"title": "文档标题",
"total_slides": 5,
"slides": [
{
"slide_number": 1,
"page_type": "cover",
"content": "标题:AI 产品设计指南n副标题:构建以用户为中心的智能体验"
},
{
"slide_number": 2,
"page_type": "content",
"content": "核心原则n- 简单直观n- 快速响应n- 透明可控"
},
{
"slide_number": 3,
"page_type": "content",
"content": "设计流程n1. 用户研究n2. 原型设计n3. 测试迭代"
},
{
"slide_number": 4,
"page_type": "data",
"content": "用户满意度n使用前:65%n使用后:92%n提升:+27%"
},
{
"slide_number": 5,
"page_type": "content",
"content": "总结n- 以用户为中心n- 持续优化迭代n- 数据驱动决策"
}
]
}
重要: 将此文件保存到:
./slides_plan.json.claude/skills/ppt-generator/slides_plan.json独立模式:
cd /path/to/ppt-generator
Skill 模式:
cd ~/.claude/skills/ppt-generator
python generate_ppt.py --plan slides_plan.json --style styles/gradient-glass.md --resolution 2K
或使用 uv run(推荐):
uv run python generate_ppt.py --plan slides_plan.json --style styles/gradient-glass.md --resolution 2K
参数说明:
--plan: slides 规划 JSON 文件路径--style: 风格文件路径--resolution: 分辨率(2K 或 4K)--template: HTML 模板路径(可选)脚本会输出进度信息:
✅ 已加载环境变量: /path/to/.env 📊 开始生成 PPT 图片... 总页数: 5 分辨率: 2K (2752x1536) 风格: 渐变毛玻璃卡片风格 🎨 生成第 1 页 (封面页)... 提示词已生成 调用 Nano Banana Pro API... ✅ 第 1 页生成成功 (32.5 秒) 🎨 生成第 2 页 (内容页)... ✅ 第 2 页生成成功 (28.3 秒) ... ✅ 所有页面生成完成! 📁 输出目录: outputs/20260112_143022/
这是 Skill 的核心优势:我(Claude Code)会分析生成的 PPT 图片,为每个转场生成精准的视频提示词。
我会读取所有生成的图片:
# 自动读取输出目录中的所有图片 slides = ['slide-01.png', 'slide-02.png', ...]
对于每对相邻图片,我会:
示例输出:
{
"preview": {
"slide_path": "outputs/.../slide-01.png",
"prompt": "画面保持封面的静态构图,中心的3D玻璃环缓慢旋转..."
},
"transitions": [
{
"from_slide": 1,
"to_slide": 2,
"prompt": "镜头从封面开始,玻璃环逐渐解构,分裂成透明碎片..."
}
]
}
我会将生成的提示词保存到:
outputs/TIMESTAMP/transition_prompts.json
关键优势:
如果用户选择生成视频,使用阶段 4 生成的提示词文件:
python generate_ppt_video.py --slides-dir outputs/20260112_143022/images --output-dir outputs/20260112_143022_video --prompts-file outputs/20260112_143022/transition_prompts.json
生成内容:
preview.mp4)transition_01_to_02.mp4 等)video_index.html)full_ppt_video.mp4)✅ PPT 生成成功! 📁 输出目录: outputs/20260112_143022/ 🖼️ PPT 图片: outputs/20260112_143022/images/ 🎬 播放网页: outputs/20260112_143022/index.html 打开播放网页: open outputs/20260112_143022/index.html 播放器快捷键: - ← → 键: 切换页面 - ↑ Home: 回到首页 - ↓ End: 跳到末页 - 空格: 暂停/继续自动播放 - ESC: 全屏切换 - H: 隐藏/显示控件
✅ PPT 视频生成成功! 📁 输出目录: outputs/20260112_143022_video/ 🖼️ PPT 图片: outputs/20260112_143022/images/ 🎬 转场视频: outputs/20260112_143022_video/videos/ 🎮 交互式播放器: outputs/20260112_143022_video/video_index.html 🎥 完整视频: outputs/20260112_143022_video/full_ppt_video.mp4 打开交互式播放器: open outputs/20260112_143022_video/video_index.html 播放逻辑: 1. 首页: 播放循环预览视频 2. 按右键 → 播放转场视频 → 显示目标页图片(2 秒) 3. 再按右键 → 播放下一个转场 → 显示下一页图片 4. 依此类推... 视频播放器快捷键: - ← → 键: 上一页/下一页(含转场) - 空格: 播放/暂停当前视频 - ESC: 全屏切换 - H: 隐藏/显示控件
Skill 会按以下顺序查找 .env 文件:
./ppt-generator/.env.git 或 .env 的目录~/.claude/skills/ppt-generator/.env# Google AI API 密钥(必需) GEMINI_API_KEY=your_gemini_api_key_here # 可灵 AI API 密钥(可选,用于视频功能) KLING_ACCESS_KEY=your_kling_access_key_here KLING_SECRET_KEY=your_kling_secret_key_here
1. API 密钥未设置
错误: ⚠️ 未找到 .env 文件,尝试使用系统环境变量
未设置 GEMINI_API_KEY 环境变量
解决:
1. 创建 .env 文件
2. 添加 GEMINI_API_KEY=your_key_here
2. Python 依赖缺失
错误: ModuleNotFoundError: No module named 'google.genai' 解决: pip install google-genai pillow python-dotenv
3. FFmpeg 未安装
错误: ❌ FFmpeg 不可用!
解决: brew install ffmpeg # macOS
sudo apt-get install ffmpeg # Ubuntu
4. API 调用失败
错误: API 调用超时或失败 解决: 1. 检查网络连接 2. 确认 API 密钥有效 3. 稍后重试
5. 视频生成失败
错误: 可灵 AI 密钥未配置 解决: 1. 如果只需要图片,跳过视频生成步骤 2. 如果需要视频,配置 KLING_ACCESS_KEY 和 KLING_SECRET_KEY
gradient-glass.md)视觉特点:
适用场景:
vector-illustration.md)视觉特点:
适用场景:
styles/ 目录创建新的 .md 文件Nano Banana Pro(图片生成):
gemini-3-pro-image-preview16:9IMAGE可灵 AI(视频生成):
FFmpeg(视频合成):
生成速度:
文件大小:
仅图片模式:
outputs/20260112_143022/ ├── images/ │ ├── slide-01.png │ ├── slide-02.png │ └── ... ├── index.html # 图片播放器 └── prompts.json # 提示词记录
视频模式:
outputs/20260112_143022_video/ ├── videos/ │ ├── preview.mp4 # 首页循环预览 │ ├── transition_01_to_02.mp4 │ ├── transition_02_to_03.mp4 │ └── ... ├── video_index.html # 交互式播放器 └── full_ppt_video.mp4 # 完整视频
prompts.json 了解生成逻辑,可手动调整后重新生成用户输入:
我需要基于这份会议纪要生成一个 5 页的 PPT,使用矢量插画风格。 会议主题:Q1 产品路线图规划 参与人:产品团队 讨论内容: 1. 用户反馈汇总 2. 新功能优先级 3. 技术可行性评估 4. Q1 里程碑 5. 下一步行动项
Skill 执行:
用户输入:
基于 AI-Product-Design.md 文档,生成一个 15 页的 PPT,使用渐变毛玻璃风格,需要转场视频。
Skill 执行:
MIT License
ARCHITECTURE.mdAPI_MANAGEMENT.mdENV_SETUP.mdSECURITY.mdREADME.md