Files

312 lines
14 KiB
Markdown
Raw Permalink 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.
---
name: aura-ppt
description: >
专业的演示文稿(PPT/PPTX)生成与美化技能。综合国际顶级AI PPT工具的能力:
Gamma的设计感、WPS AI的中文排版理解、7牛AI PPT的内容保真、Beautiful.ai的
无损导出——全部通过本地python-pptx引擎实现,零云端依赖、数据不出本机。
触发场景:用户要求"生成PPT/制作演示文稿/做一份汇报材料/把文档转成PPT/
美化这个PPT/给方案配一份PPT/做路演材料"等。支持四种模式:全流程生成(从
大纲到成品)、文档转PPTWord/Markdown/文本)、已有PPT美化、数据图表页。
适用于中文/日文/英文汇报、方案陈述、管理层汇报、技术分享等场景。
---
# Aura PPT — 本地AI演示文稿引擎
## 核心定位
**一站式本地PPT生成技能**:把国际AI PPT工具的顶级能力编码为可复现的本地渲染引擎。
| 能力来源 | 编码进技能的方式 |
|---|---|
| Gamma 设计感 | 品牌级设计系统(design_system.py):统一配色、字体层级、间距网格、组件库 |
| WPS AI 中文理解 | 中文排版规范(references/chinese-typography.md):中英混排、标点、字体回退 |
| 7牛AI PPT 内容保真 | **内容保真规则**:用户提供的数据/术语/数字 100% 原样保留,禁止改写 |
| Beautiful.ai 无损导出 | python-pptx 原生输出,零转换损失,交付后完全可编辑 |
| python-pptx 可控性 | 全矢量形状,任何人可用 PowerPoint/WPS 二次编辑 |
**硬性合规优势**:全程本地渲染,数据不出本机——适合处理客户机密材料(对日外包、NDA场景)。
---
## 触发条件
以下场景应调用本技能(只要用户意图包含其一):
- "生成/做一份 PPT / 演示文稿 / 幻灯片"
- "把这个文档/方案/报告转成 PPT"
- "美化 / 优化 / 重排这个 PPT"
- "给 XX 配一份汇报材料 / 路演材料 / 提案"
- "做一份管理层汇报 / 技术分享 / 项目总结"
若用户只是问PPT工具选型、PPT技巧问答(非生成请求)→ 不触发。
---
## 四种工作模式
| 模式 | 触发词 | 流程 |
|---|---|---|
| **A. 全流程生成** | 从零生成、做一份 | 大纲 → 页面规划(JSON) → 渲染 → 验证 |
| **B. 文档转PPT** | 把XX转成PPT | 解析源文档 → 提取结构 → 页面规划 → 渲染 |
| **C. 已有PPT美化** | 美化、优化、重排 | 打开现有PPTX → 重新应用设计系统 → 输出 |
| **D. 数据图表页** | 数据可视化、图表 | 解析数据(CSV/Excel) → 图表类型选择 → 渲染 |
---
## 工作流
### Step 1:需求澄清(30秒内完成,不要过度提问)
确认以下最小集,其余用合理默认值:
| 参数 | 默认值 | 说明 |
|---|---|---|
| 页数 | 8-12页 | 内容多可自动扩展 |
| 设计系统 | `aura-dark`(品牌深色) | 见 references/design-system.md |
| 语言 | 跟随用户内容(中文/日文/英文) | 中日双语混合时开启术语对齐 |
| 输出目录 | 用户工作目录 | 询问一次即可 |
| 16:9 / 4:3 | 16:9 | 现代汇报默认 |
**如果用户提到"公司/品牌"→ 询问是否有品牌色/Logo**,有则调用 `assets/` 下的品牌配置。
### Step 2:规划页面结构(Plan JSON
生成结构化页面规划。**这是内容保真的关键步骤**:
```
plan.json 结构:
{
"title": "演示文稿标题",
"design": "aura-dark",
"mode": "generate | doc2ppt | improve | charts",
"source_doc": "可选:源文档路径",
"slides": [
{
"type": "cover | toc | section | content | two_column |
table | chart | timeline | quote | end",
"title": "页面标题",
"subtitle": "副标题(可选)",
"content": "正文要点(每行一个要点,支持 **加粗** 和 - 子项)",
"data": {"表格数据/图表数据,可选"},
"chart": {"type": "bar|line|pie|donut", "source": "csv路径或内联数据"},
"notes": "演讲者备注(可选)"
}
]
}
```
### Step 3:调用渲染引擎
```bash
# 标准生成(使用内置设计系统)
python scripts/engine.py --plan plan.json --output output.pptx [--design aura-dark]
# 模板生成(继承指定PPTX的母版背景/页脚/Logo/版式)
python scripts/engine.py --plan plan.json --output output.pptx --template 模板.pptx
```
`--template` 模板模式:
- 打开指定 PPTX 作为模板,**继承其母版、版式、背景、页脚、Logo**
- 自动清空模板自带的旧幻灯片,只保留母版结构
- 用模板的"白紙"版式创建页面,引擎的绘制元素叠加其上
- 适合:公司已有固定PPT模板/母版,希望新生成的内容保持公司风格一致
- 模板模式下不绘制引擎的纯色背景(继承模板背景)
**区域对齐**:引擎的 header/body/footer 坐标严格遵循设计系统的 `layout` 配置。
`report-jp` 的 layout 已与公司母版对齐(参考 010_【本部長報告会】):
| 区域 | 模板规格 | layout 配置 |
|---|---|---|
| Header 章节行 | y0.32 (20pt 含编号) | header_top=0.32 |
| Header 主题行 | y0.88 (16pt) | subtitle_top=0.88 |
| Body 起始 | y1.74 | body_top=1.60 |
| Body 结束 | y6.4 页脚条上方 | body_bottom=6.30 |
| Footer | y6.4~7.1 | footer_top=7.05 |
| 页码 | y7.16 右下角 | page_num_y=7.16 |
report-jp 的 header 采用模板风格:**章节行20pt在上 + 主题行16pt在下**(与
"竖条+大标题"的通用风格不同),通过 `_header_jp()` 专用方法渲染。
### Step 4:验证输出(必须执行)
```bash
python scripts/engine.py --verify output.pptx [--plan plan.json]
```
验证项:
1. ✅ 页数符合预期
2. ✅ 所有文本无溢出(超出页面边界检测)
3.**内容保真**:用户提供的数据/术语与源输入逐项比对(有差异即报错)
4. ✅ 图表数据点完整
---
## 内容保真规则(最高优先级,不可违反)
> 灵感来源:7牛AI PPT 的"保持原文"模式。**AI只负责结构、排版、设计,绝不改写用户的数据。**
1. **数字原样保留**:用户提供的任何数值(`96.8%``¥5,000万``2024年3月`)在最终PPT中必须逐字符一致
2. **术语原样保留**:专有名词、产品名、客户名、日文术语(`テスト仕様書``要件定義`)不得意译、不得替换
3. **禁止四舍五入**`23.6%` 不得写成 `约24%``3.14` 不得写成 `3`
4. **引用原样保留**:用户提供的引用、条款、数据来源标注,一字不改
5. **结构可重组,内容不可改写**:AI 可以调整内容的组织方式(分页、分组、层级),但不得修改内容本身的含义和数据
6. **LLM生成的新内容**(用户未提供、由AI补充的过渡句/总结)必须与用户内容区分:可用 `[AI补充]` 标注或在演讲者备注中说明
**验证**:渲染后必须运行 `--verify`,自动比对源数据与输出文本。
---
## 中文排版规范(中文场景必读)
> 灵感来源:WPS AI 的中文理解。遵循 references/chinese-typography.md 的完整规则。
核心规则速览:
1. **中英混排加空格**`使用 Python 开发`(中文与英文/数字之间插入半角空格)
2. **标点规范**:中文语境用全角标点(,。:;);引号用「」或“”
3. **日文文本**:日文与中文之间不加空格;日文假名用全角;保留日文原字符(テスト、仕様書)
4. **数字**:千位分隔(1,000,000);百分比紧跟数字(96.8%)
5. **字体**:中文微软雅黑、日文Yu Gothic/游ゴシック、英文Segoe UI;字体回退链见 references
6. **标题层级**:封面标题40pt+ → 章节标题32pt → 页标题28pt → 正文16-18pt → 注释12pt
7. **行长**:每行不超过28个中文字符,长文自动换行
8. **段距**:正文行距1.3-1.5,段间距8-12pt
---
## 设计系统
内置 3 套设计系统(见 references/design-system.md):
| 系统名 | 风格 | 适用 |
|---|---|---|
| `aura-dark`(默认) | 深色高级(深蓝黑 + 电光青) | 科技感、对外提案、产品发布 |
| `business-report` | **浅色商务(白底 + 火焰蓝 + 商务红)** | 商务报告、管理层汇报、咨询风格 |
| `report-jp` | **日式商务报告(法人蓝 + 浅天蓝卡片 + Meiryo UI** | **日本客户汇报、本部報告会、对日业务** |
设计系统选型建议:
- 用户提到"日本/日方/報告会/本部/日企" → 用 `report-jp`10.83×7.5in 非标准比例,Meiryo UI 字体,章节编号页眉,支持「機密情報」机密标记)
- 用户提到"商务报告/汇报风格/正式/咨询/打印" → 用 `business-report`
- 用户提到"科技感/高级/对外/发布会" → 用 `aura-dark`
选择方式:plan.json 的 `design` 字段;CLI 用 `--design`
### 通用 plan.json 顶层字段
| 字段 | 说明 |
|---|---|
| `design` | 设计系统名(aura-dark / business-report / report-jp |
| `company` | 页脚公司名 |
| `date` | 页脚日期 |
| `notes_template` | true 时自动为无备注页面生成结构化演讲备注 |
| `confidential` | 机密标记文本(如「機密情報」「社外秘」),显示在每页右上角红色标签 |
### 页面类型(每种支持 section_no / confidential 字段)
cover / toc / section / content / two_column / table / chart / timeline / **flowchart** / quote / end
**flowchart 流程图**(参考日企报告会资料):
- 横向流程:`content: ["阶段A|描述", "阶段B|描述", ...]`
- 泳道模式:`rows: ["泳道1", "泳道2"], content: [["步骤A","步骤B"], ["步骤C"]]`
- 浅天蓝卡片 + 法人蓝标题 + 箭头连接,日企报告标准样式
### 高级能力(引擎内置,plan 字段触发)
**cover 封面大数字**`stats` 字段):
```json
"stats": [["362件", "概要設計案を作成"], ["5案件", "に横断参画"]]
```
渲染为右侧竖排大数字卡片墙(彩色顶条+大数字+说明),标题区自动压缩。
**content 要点卡片**(自动识别):
- `content``**标题** 描述` 格式的行 → 自动渲染为**卡片网格**(2列,左色条+标题+描述+投影)
- 纯文本行 → 普通文本布局;混合 → 卡片区+底部说明
- 卡片≥3行时字号自动压缩防溢出
**table 混合页**`charts` 字段):
- 表格下方渲染一个或多个图表(`chart` 单图 / `charts` 多图并排)
**chart 多图**`charts` 字段):
```json
"charts": [{"type": "bar", "title": "图1", "data": {...}}, {"type": "bar", "title": "图2", "data": {...}}]
```
- 多图并排,每个带独立子标题
- 柱状图:**渐变柱体**(顶部提亮45%→底部原色)+ 水平网格线 + 数值/类别标签
**全局视觉能力**
- 卡片柔和投影(`add_shape_shadow`):所有卡片容器自动带投影,立体感
- 协调渐变色板:每个设计系统 6 色光谱序列(冷→暖过渡)
- 圆角卡片(radius 8%
- 页眉装饰线(report-jp:主色细线+左端锚点块)
- 章节页装饰(竖条+横线)
- 内容区背景层(report-jp 模板模式:body 区极浅色分区)
### 日式页眉(report-jp 特色)
plan 页面支持 `section_no` 字段(如 "1"),渲染为日式页眉编号:
```
1. 【トピックス】AI能力構築の全体像のご報告(1/2)
```
配合 `confidential` 字段显示右上角「機密情報」红色标记。
组件库(三种系统共用):
- 封面/目录/章节/内容页/双栏/表格/图表/时间线/流程图/引言/结束页
- 统一网格:页边距 0.5in,垂直节奏 0.2in 网格
- 圆角卡片(radius 8%)+ 柔和投影
- 图表渐变柱体 + 协调色板
如需其他风格,在 engine.py 的 DESIGN_SYSTEMS 注册表中扩展(继承 DesignSystem 覆写令牌)。
---
## 数据图表页(模式D
```bash
# 方式1CSV/Excel 数据源
python scripts/engine.py --plan plan.json --output out.pptx
# plan.json 中 slide.chart = {"type": "bar", "source": "data.csv", "title": "季度营收"}
# 方式2:内联数据
# slide.chart = {"type": "pie", "data": {"A": 30, "B": 45, "C": 25}}
```
支持的图表类型:bar(柱状)、line(折线)、pie(饼图)、donut(环形)、stacked_bar(堆叠柱)。
图表规范:
- 数据标签必须显示实际数值(不省略)
- 轴标签用中文
- 图例位置统一右下角
- 色板取自设计系统的 6 色序列
---
## 已有PPT美化(模式C
```bash
python scripts/engine.py --improve input.pptx --output output.pptx [--design aura-dark]
```
美化规则:
- 统一背景色与主题色
- 统一标题字体/字号/颜色
- 统一正文排版(字体、行距、段落间距)
- 添加页脚/页码(可选)
- **内容零改动**:只动样式,不动文字内容
---
## 常见问题
**Q1:内容保真和AI生成冲突怎么办?**
不冲突。规则是:**用户提供的内容一个字不改;AI补充的新内容明确标注**。汇报材料中,数据准确 > 文字华丽。
**Q2:支持日文PPT吗?**
支持。日文字体(Yu Gothic)已纳入字体回退链;日文内容原样渲染。中日混合时遵循"日文与中文间不加空格"规则。
**Q3:输出文件能在WPS/PowerPoint里编辑吗?**
能。python-pptx 输出标准 PPTX,所有元素都是原生矢量形状,可完全二次编辑——这正是"导出无损"的实现方式。
**Q4:需要网络/API吗?**
不需要。渲染引擎是纯本地Pythonpython-pptx)。LLM负责规划,引擎负责渲染。客户机密材料可以放心处理。
**Q5:为什么不用AI生图做背景?**
本技能采用"矢量形状 + 设计系统"路线:文字清晰、可编辑、无版权风险、渲染确定性。需要AI插画背景时,可用 image-generation 技能单独生成图片后插入。