Install
openclaw skills install @mebusw/jackyshen-gen-pptxUse this skill any time a .pptx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations, with color palettes of UPerform company; reading, parsing, or extracting text from any .pptx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates, layouts, speaker notes, or comments. Trigger whenever the user mentions "deck," "slides," "presentation," "幻灯片," "PPT," or references a .pptx filename, regardless of what they plan to do with the content afterward. If a .pptx file needs to be opened, created, or touched, use this skill.
openclaw skills install @mebusw/jackyshen-gen-pptx生成指定风格的pptx格式幻灯片。
-t THEME:指定配色方案-noIMG:不使用文生图skill进行配图-noQA:跳过QA步骤| 任务 | 指南 |
|---|---|
| 读取/分析内容 | python -m markitdown presentation.pptx |
| 编辑或从模板创建 | 阅读 editing.md |
| 从零开始创建 | 阅读 creating.md |
# 文本提取
python -m markitdown presentation.pptx
# 可视化概览
python scripts/thumbnail.py presentation.pptx
# 原始 XML
python scripts/office/unpack.py presentation.pptx unpacked/
完整详情请阅读 editing.md。
thumbnail.py 分析模板完整详情请阅读 creating.md。
当没有模板或参考演示文稿时使用。
不要制作无聊的幻灯片。 白底上的纯要点列表不会给任何人留下深刻印象。考虑从这个列表中为每张幻灯片获取灵感。
选择与主题匹配的配色——不要默认使用通用蓝色。用这些配色方案作为灵感:
缺省默认主题色是优普丰(UPerform)
| 主题 | 主色 | 辅助色 | 强调色 |
|---|---|---|---|
| 优普丰(UPerform) | #0A2540 (深海蓝) | #1E4976 (海洋蓝) | #D4AF37 (尊贵金) |
午夜高管 #1E2761(藏青) #CADCFC(冰蓝) #FFFFFF`(白) | |||
森林与苔藓 #2C5F2D(森林绿) #97BC62(苔藓绿) #F5F5F5`(奶油白) | |||
珊瑚活力 #F96167(珊瑚红) #F9E795(金色) #2F3C7E`(藏青) | |||
暖色陶土 #B85042(陶土红) #E7E8D1(沙色) #A7BEAE`(鼠尾草绿) | |||
海洋渐变 #065A82(深蓝) #1C7293(蓝绿) #21295C`(午夜蓝) | |||
炭灰极简 #36454F(炭灰) #F2F2F2(米白) #212121`(黑) | |||
青绿信任 #028090(青绿) #00A896(海沫绿) #02C39A`(薄荷绿) | |||
浆果与奶油 #6D2E46(浆果紫) #A26769(暗玫瑰) #ECE2D0`(奶油色) | |||
鼠尾草宁静 #84B59F(鼠尾草绿) #69A297(桉树绿) #50808E`(石板灰) | |||
樱桃大胆 #990011(樱桃红) #FCF6F5(米白) #2F3C7E`(藏青) |
配色原则:
每张幻灯片都需要一个视觉元素——图片、图表、图标或形状。纯文字幻灯片容易被遗忘。
布局选项:
数据展示:
视觉打磨:
选择有趣的字体搭配——不要默认使用 Arial。选择有个性的标题字体,搭配干净的正文字体。
| 标题字体 | 正文字体 | 适用场景 |
|---|---|---|
| 宋体 | 黑体 | 商务、时尚、杂志风 |
| Georgia | Calibri | 正式商务、学术 |
| Arial Black | Arial | 强烈、现代感 |
| Trebuchet MS | Calibri | 科技、现代 |
| Palatino | Garamond | 优雅、传统 |
| Consolas | Calibri | 技术、数据 |
| 演示悠然小楷 | 圆体 | 手绘、亲和 |
| 元素 | 字号 |
|---|---|
| 幻灯片标题 | 36-44pt 加粗 |
| 章节标题 | 20-24pt 加粗 |
| 正文 | 14-16pt |
| 说明 | 10-12pt 淡色 |
margin: 0 或偏移形状以留出内边距假设存在问题。你的工作是找到它们。
你的第一次渲染几乎从来不是完全正确的。把 QA 当作 bug hunt,而不是确认步骤。如果你第一次检查没发现任何问题,说明你看得不够仔细。
python -m markitdown output.pptx
检查缺失内容、拼写错误、顺序错误。
使用模板时,检查遗留的占位符文本:
python -m markitdown output.pptx | grep -iE "xxxx|lorem|ipsum|this.*(page|slide).*layout"
如果 grep 返回结果,在宣布成功前修复它们。
⚠️ spawn sub agents——即使只有 2-3 张幻灯片。你一直盯着代码,会看到你期望看到的,而不是实际存在的。子代理有新鲜的视角。
首先探测环境中是否存在图像理解(image understanding)模型或相应视觉理解大模型或相应SKILL或服务能力(注意不是视觉生成能力)。如果不存在,则跳过此视觉QA环节。如果存在,则将幻灯片转换为图片(见转换为图片),调用视觉理解模型并使用以下提示词:
视觉检查这些幻灯片。假设存在问题——找出它们。
查看:
- 元素重叠(文字穿过形状、线条穿过文字、元素堆叠)
- 文字溢出或在边缘/框边界处被截断
- 装饰线为单行文字设计但标题换行到两行
- 来源引用或页脚与上方内容冲突
- 元素太近(< 0.3" 间距)或卡片/章节几乎相触
- 不均匀的间距(一处大块空白,另一处拥挤)
- 距幻灯片边缘的边距不足(< 0.5")
- 栏或相似元素不一致对齐
- 低对比度文字(例如,浅灰色文字配奶油色背景)
- 低对比度图标(例如,深色图标配深色背景但没有对比圆形)
- 文本框太窄导致过度换行
- 遗留的占位符内容
对于每张幻灯片,列出问题或关注区域,即使是小问题。
阅读并分析这些图片:
1. /path/to/slide-01.jpg(预期:[简要描述])
2. /path/to/slide-02.jpg(预期:[简要描述])
报告发现的所有问题,包括小问题。
在完成至少一个修复-验证循环之前,不要宣布成功。
将演示文稿转换为单独的幻灯片图片以便视觉检查:
python scripts/office/soffice.py --headless --convert-to pdf output.pptx
pdftoppm -jpeg -r 150 output.pdf slide
这会创建 slide-01.jpg、slide-02.jpg 等。
要在修复后重新渲染特定幻灯片:
pdftoppm -jpeg -r 150 -f N -l N output.pdf slide-fixed
pip install "markitdown[pptx]" - 文本提取pip install Pillow - 缩略图网格npm install -g pptxgenjs - 从零创建soffice)- PDF 转换(通过 scripts/office/soffice.py 为沙盒环境自动配置)pdftoppm)- PDF 转图片