nanobanana-ppt-visualizer · git:20260826.98e3156 · 2026-08-26 · sha256 a731a2361fcccb03

nanobanana-ppt-visualizer git:20260826.98e3156A

Immutable. This exact content is served forever at /api/v1/blob/a731a2361fcccb03.

---
name: nanobanana-ppt-visualizer
description: 平面设计师与内容创作者在制作演示文稿时,当需要将内容大纲转化为高颜值视觉大片,使用此技能可一键生成风格化配图、交互式网页播放器及演示视频,轻松实现从内容规划到视觉呈现的完整闭环,大幅提升汇报演示质感!
dependency:
  python:
    - pillow>=9.0.0
    - python-dotenv>=0.19.0
---

# PPT 视觉增强工具

## 任务目标
- 本 Skill 用于:为 PPT 内容生成高质量视觉呈现,包括图片渲染、交互式播放器和视频合成
- 能力包含:风格化图片生成、HTML 播放器生成、视频素材管理、FFmpeg 视频合成
- 触发条件:用户需要为 PPT 内容添加视觉效果,或与 ppt-generator Skill 协同工作

## 前置准备
- 依赖说明:scripts 脚本所需的依赖包
  ```
  pillow>=9.0.0
  python-dotenv>=0.19.0
  ```
- 系统依赖:FFmpeg(可选,用于视频合成功能)
  ```bash
  # Ubuntu/Debian
  sudo apt-get install ffmpeg

  # macOS
  brew install ffmpeg
  ```

## 操作步骤

### 标准流程(与 ppt-generator 协同)

#### 步骤 1:获取 PPT 内容(协作模式)
1. 与 ppt-generator Skill 协同:
   - ppt-generator 负责:主题分析、内容规划、结构设计
   - 输出格式:符合规范的 JSON 数据(详见 [references/ppt_structure_guide.md](references/ppt_structure_guide.md))
2. 接收 JSON 数据,包含:
   - metadata:标题、作者、主题、关键词
   - slides:每页的布局、标题、内容、图片标注

#### 步骤 2:选择视觉风格
1. 扫描 `assets/styles/` 目录,列出可用风格:
   - `gradient-glass.md`:渐变毛玻璃风格(科技感、商务)
   - `vector-illustration.md`:矢量插画风格(温暖、教育)
2. 根据内容主题和场景推荐合适的风格
3. 智能体生成图片描述提示词,参考风格模板

#### 步骤 3:生成视觉素材
1. **图片生成**(使用智能体能力):
   - 根据每页内容和风格模板,生成图片描述
   - 使用智能体的图像生成能力创建图片
   - 保存为 slide-01.png, slide-02.png 等

2. **可选:视频生成**(需要可灵 AI API):
   - 如果用户需要视频转场,调用可灵 AI API
   - 生成首页预览视频和页面转场视频
   - 使用 `scripts/video_materials.py` 管理视频素材

#### 步骤 4:生成播放器
1. 调用 `scripts/generate_viewer.py` 生成 HTML 播放器:
   - 支持图片轮播、键盘导航、全屏播放
   - 支持视频+图片混合播放(如果生成了视频)
2. 输出交互式播放器,可直接在浏览器中预览

#### 步骤 5:视频合成(可选)
1. 如果生成了视频素材,调用 `scripts/video_composer.py`:
   - 使用 FFmpeg 合成完整视频
   - 统一分辨率和帧率
   - 输出 full_ppt_video.mp4

### 独立使用模式

当用户直接提供 PPT 内容(JSON 格式)时:

1. 读取用户提供的 JSON 文件或内容
2. 执行步骤 2-5,生成视觉呈现

## 协同工作流程

### 与 ppt-generator Skill 配合

```
用户请求:"生成一个关于 AI 产品的 PPT"

┌─────────────────────────────────────────────────────────┐
│  ppt-generator Skill                                    │
├─────────────────────────────────────────────────────────┤
│  1. 主题分析师:分析主题,生成大纲                        │
│  2. 模板设计师:推荐布局                                  │
│  3. 内容策划师:规划内容结构                              │
│  4. 文本创作者:撰写内容                                  │
│  5. 视觉设计师:提供配图建议                              │
│  6. 优化编辑师:优化文本                                  │
│  7. PPT 构建师:生成 JSON 数据                           │
└─────────────────────────────────────────────────────────┘
                          │
                          ▼ 输出 JSON
┌─────────────────────────────────────────────────────────┐
│  nanobanana-ppt-visualizer Skill                        │
├─────────────────────────────────────────────────────────┤
│  1. 接收 JSON 数据                                       │
│  2. 选择视觉风格                                          │
│  3. 生成图片(使用智能体能力)                            │
│  4. 生成 HTML 播放器                                      │
│  5. 可选:视频合成                                        │
└─────────────────────────────────────────────────────────┘
                          │
                          ▼ 输出
              交互式播放器 + 完整视频(可选)
```

### 数据格式兼容性

ppt-generator 输出的 JSON 格式与 nanobanana-ppt-visualizer 完全兼容:

```json
{
  "metadata": {
    "title": "演示文稿标题",
    "author": "作者姓名"
  },
  "slides": [
    {
      "layout": "TitleSlide",
      "title": "封面标题",
      "content": ["副标题"],
      "notes": "备注"
    }
  ]
}
```

## 资源索引
- 图片生成脚本:见 [scripts/generate_viewer.py](scripts/generate_viewer.py)(用途:生成 HTML 播放器和图片管理)
- 视频素材管理:见 [scripts/video_materials.py](scripts/video_materials.py)(用途:管理视频素材)
- 视频合成:见 [scripts/video_composer.py](scripts/video_composer.py)(用途:FFmpeg 视频合成)
- 格式规范:见 [references/ppt_structure_guide.md](references/ppt_structure_guide.md)(用途:JSON 数据格式标准)
- 协同指南:见 [references/collaboration_guide.md](references/collaboration_guide.md)(用途:与 ppt-generator 协同工作指南)
- 风格模板:见 [assets/styles/](assets/styles/)(可选:gradient-glass.md、vector-illustration.md)
- HTML 模板:见 [assets/templates/](assets/templates/)(可选:viewer.html、video_viewer.html)

## 注意事项
- 本 Skill 与 ppt-generator Skill 完全兼容,可以无缝协作
- 图片生成使用智能体的图像生成能力,无需第三方 API
- 视频生成功能需要可灵 AI API(可选),如需使用请配置密钥
- FFmpeg 是可选依赖,仅在使用视频合成功能时需要
- 保持与用户的互动,在关键节点(如风格选择)征求反馈

## 使用示例

### 示例 1:与 ppt-generator 完整协作
- 功能说明:两个 Skill 完整协作,从内容到视觉
- 执行方式:ppt-generator(7 个角色)→ nanobanana-ppt-visualizer(视觉生成)
- 用户指令:"生成一个关于 AI 产品的 PPT,使用渐变毛玻璃风格"
- 输出:交互式播放器 + 完整视频(可选)

### 示例 2:基于现有 JSON 生成播放器
- 功能说明:接收 JSON 数据,生成播放器
- 执行方式:nanobanana-ppt-visualizer 独立运行
- 关键参数:JSON 文件路径、风格选择
- 命令:`python scripts/generate_viewer.py --input ./ppt_data.json --style gradient-glass`

### 示例 3:仅生成图片(无视频)
- 功能说明:使用智能体生成 PPT 图片
- 执行方式:智能体(图像生成)+ 脚本(播放器生成)
- 适用场景:快速预览、静态展示
- 输出:HTML 播放器 + 图片文件

### 示例 4:完整视频合成
- 功能说明:合成包含转场的完整视频
- 执行方式:脚本(FFmpeg 合成)
- 前提:已生成图片和视频素材
- 命令:`python scripts/video_composer.py --output ./full_ppt_video.mp4`