陕西师范大学 PPT 智作大师
能力一句话
给材料 → 出自带陕师大视觉规范的 PPTX。用户给一段主题、一份大纲,或上传一份 Word/PDF/论文/总结/教案/申报书/既有 PPT,本 skill 负责识别场景、重构建内容、套用陕西师范大学品牌视觉,产出 16:9 的 .pptx。
目标
把用户的主题、文档、论文、教案、总结、申报书或已有 PPT,转化为内容正确、结构清楚、场景适配、视觉专业、适合大屏演示的陕西师范大学风格 PPT。
核心原则
- 先识别场景,再设计结构,最后生成页面;禁止把 Word 逐段搬进 PPT。
- 一页一个核心信息。标题必须表达观点或任务,不写"研究背景""方法"这类空章节名。
- 品牌层与内容层分离。只使用本 skill 内置(由用户提供的学校原始文件提取)的校徽、标准色与校园图;不臆造校训、VI 参数或假校徽。
- 按演讲时长控制页数:默认每分钟 1–1.5 页;8 分钟答辩约 10–14 页;教学课件按课堂节奏规划。
- 数据优先图表化,关系优先图解化,过程优先流程化,比较优先矩阵化。
- 生成后必须执行
scripts/qc_check.py,通过后才交付。
环境与执行(重要)
渲染引擎依赖 python-pptx 与 Pillow,已安装在受管虚拟环境:
C:\Users\dell\.workbuddy\binaries\python\envs\default\Scripts\python.exe
标准命令(在本 skill 目录下执行):
# 1) 由 deck spec 生成 pptx
"<VENV>/Scripts/python.exe" scripts/generate_pptx.py --spec deck.json --out 输出.pptx
# 2) 生成后质量检查
"<VENV>/Scripts/python.exe" scripts/qc_check.py --pptx 输出.pptx
# 3) 想先看效果:生成内置示例
"<VENV>/Scripts/python.exe" scripts/generate_pptx.py --example --out 示例.pptx
若该环境不可用,执行:
python -m venv <VENV> && <VENV>/Scripts/pip install python-pptx Pillow
标准工作流(4 步)
第 1 步:读取材料与路由
- 读取用户输入的主题、大纲,或上传的 Word/PDF/文本材料。
- 按
router/presentation_router.md判断:身份 / 场景 / 受众 / 时长 / 学科 / 材料类型 / 正式程度 / 页数。 - 优先级:用户明确指定的场景 > 材料语义 > 文件类型。
- 信息足以合理推断时直接制作;只有缺失信息会显著改变结果时才追问一次(一次问清,不要反复打断)。
第 2 步:内容重构建
调用 engines/<scene>/engine.md 的结构骨架,把原材料重组为页面序列:
- 每页先写"页面意图"(这页要让人记住什么),再选版式。
- 把段落提炼为观点式标题 + 3–6 条要点;每条要点 = 粗体小标题 + 一句说明。
- 数字做进
stats/chart;阶段做进timeline;对比做进two_col;并列要点做进cards。 - 学科表达按
disciplines/<discipline>/profile.md校准。 - 教学场景按
engines/teaching/engine.md每 8–12 分钟安排一次有效互动页。
第 3 步:产出 deck spec JSON 并渲染
按 scripts/deck_spec_schema.md 写一份 JSON(这是唯一的中间产物,也是可复用、可手改的工程文件),然后运行 generate_pptx.py。
- 素材路径可写相对路径(相对本 skill 根目录),脚本会自动解析。
- 封面/章节页/结束页未指定图片时,会从
assets/campus/自动配校园图。 - 用户要求工程包时,把 deck.json 一并交付。
第 4 步:质量检查与交付
运行 qc_check.py(越界、字号、文本溢出、空页),对照 quality_control/checklist.md 做人工复核,修正后交付 .pptx。
八大场景路由
| 场景 key | 名称 | 结构骨架 |
|---|---|---|
graduation_defense |
毕业答辩 | 封面→研究背景与问题→目标→方法→过程→核心结果→讨论→结论与贡献→不足与展望→致谢 |
proposal_defense |
开题答辩 | 背景与价值→文献综述→Research Gap→研究问题/假设→理论框架→方法与技术路线→可行性→计划→预期成果→风险 |
academic |
学术汇报 | 问题→相关研究→方法→证据/结果→解释→贡献→局限→讨论 |
teaching |
教学课件 | 导入→目标→核心知识→案例/实验→互动→练习反馈→总结迁移 |
work_report |
工作汇报 | 一句话总览→关键指标→重点工作→标志性成果→案例→问题→下一步 |
project |
项目申报 | 背景需求→问题→目标→总体方案→建设内容→创新→基础→进度→预算→成果与效益 |
achievement |
成果展示 | 成果总览→关键突破→数据证据→代表案例→影响力→推广应用→未来计划 |
promotion |
宣传交流 | 品牌开场→我们是谁→核心特色→代表成果→校园/团队/平台→合作价值→行动号召 |
各场景的细化规则见 engines/。
可用版式(13 种)
generate_pptx.py 内置以下 layout,deck spec 的每页用 "layout" 指定:
| layout | 用途 | 关键字段 |
|---|---|---|
cover |
封面 | meta.title / subtitle / presenter / advisor / department / date |
toc |
目录 | items[{no,title,en}] |
section |
章节页 | no / title / en / points[] |
content |
观点要点页 | title / kicker / bullets[] / note |
cards |
并列卡片 | cards[{no,title,desc}] / columns |
two_col |
对比双栏 | left/right{heading,bullets[]} |
timeline |
时间轴 | items[{time,title,desc}] |
stats |
关键数据 | stats[{value,label}] / bullets[] |
chart |
图表页 | chart{type,categories,series,unit,source,value_title} / bullets[] |
image_text |
图文页 | image / image_side / bullets[] |
table |
表格页 | rows[][](首行为表头) |
quote |
金句页 | text / source |
end |
结束页 | title / subtitle / image |
bullets 支持两种写法:纯字符串,或 {"title": "粗体小标题", "desc": "一句说明"}。
视觉系统
读取 config/design_system.json。要点:
- 画布 13.333×7.5 in(16:9);左右页边距 0.83 in。
- 主色 深红
#650505(封面/章节底、标题);强调红#BB0303(编号、图形、图表);点缀金#C9A227(细线);辅助蓝#005CA1(多系列图表第二色)。 - 字体 微软雅黑(标题与正文),西文 Arial;脚本已同时写入 latin/ea/cs 字体,保证中西文一致。
- 字号 标题 ≥28pt,正文 ≥20pt(极端情况不低于 16pt)。
- 页眉页脚 正文页:观点式标题 + 英文 kicker + 红色短线 + 右上角校徽 + 页脚线/页码。封面、章节页、结束页不带页眉。
- 资产:
assets/logo/snnu_badge.png(方形徽标,浅底)、snnu_badge_white.png(深底)、snnu_lockup_white.png(横向组合标识,深底);assets/campus/campus_*.jpg(校园图 12 张)。
质量门槛(交付前必过)
qc_check.py报告 0 错误;- 对照
quality_control/checklist.md:场景匹配、结构逻辑、事实一致、学科表达、品牌合规、大屏可读、无溢出、每页一核心信息、图表含单位与来源、页数匹配时长; - 关键数字/结论/引文与原材料一致,不编造数据。
任一关键项失败 → 修正后重新生成,再交付。
资产与合规
- 校徽与校园图来自用户提供的学校原始文件;仅用于陕西师范大学相关场合。
- 不生成假校徽、不虚构校训或官方 VI 数值。
- 品牌色由本地 31 套陕师大风格模板实测提取,如与官方最新 VI 有出入,以学校官方文件为准。
参考
router/presentation_router.md—— 路由判定scripts/deck_spec_schema.md—— deck spec 完整字段说明scripts/example_deck.json—— 完整可用示例(可直接改为自己的内容)engines/*/engine.md、disciplines/*/profile.md、components/*/README.mdexamples/README.md—— 常见触发语