<!-- title: 谁决定好看：PPT四件对拆 -->

# 谁决定好看：PPT生成Skill四路对拆

## 概述

## 一、先点货：十二个入口，四条路线

## 二、评测对比表

权重沿用本栏目固定口径：功能 25%、设计 25%、实战 20%、上手 15%（越高越容易）、社区 15%。与往期不同，本期四件全部为一手文本细读，设计维度不再标※：

| Skill | 路线原型 | 功能 | 设计 | 实战 | 上手 | 社区 | 加权 |
|-------|---------|------|------|------|------|------|------|
| pptx-official | 流程手册 | ★★★★★ | ★★★★☆ | ★★★★☆ | ★★★ | ★★★★★ | **4.48** |
| frontend-slides | 交互剧本 | ★★★★ | ★★★★★ | ★★★☆ | ★★★☆ | ★★☆ | **3.85** |
| 51xtx-ppt-writer | 常量字典 | ★★★★ | ★★★★☆ | ★★★★ | ★★★★ | ★★ | **3.83** |
| ericsson-ppt-writer | 规格表 | ★★★☆ | ★★★★ | ★★★☆ | ★★★★☆ | ★★ | **3.55** |

## 三、pptx-official：用流程兜住美感

官方件是四份里唯一的“全能选手”：读（markitdown 抽文本、OOXML 拆包看原始 XML）、建（html2pptx 从零生成、模板套用）、改（unpack→edit→validate→pack 回环）三层工作流，每层配有独立脚本库（unpack.py、rearrange.py、inventory.py、replace.py、thumbnail.py）。它的设计哲学写在两个细节里。其一，**强制整读门禁**：`MANDATORY - READ ENTIRE FILE`、`NEVER set any range limits when reading this file` 反复出现三次——html2pptx.md、ooxml.md、inventory JSON 都要求从头读到尾，这是对模型“偷懒截读”行为的显式防御，也呼应了本栏目此前拆出的“强制整读”生态模式。其二，**先声明设计立场再写代码**：`State your content-informed design approach BEFORE writing code`，后面跟着一张 18 套预置调色板菜单（Classic Blue、Burgundy Luxury、Retro Rainbow……）——注意它不是让模型自选，而是**给模型发一张审美菜单**，用列举对抗默认值的平庸。最能体现工程化的是验收环：生成后必须跑 `thumbnail.py` 出缩略图网格，逐项检查“文字截断、文字重叠、贴边、对比度”四类问题；模板替换路线甚至有 `Replacement text made overflow worse in these shapes: slide-0/shape-2: overflow worsened by 1.25"` 这样**能量化溢出恶化量**的报错——美感在这份文件里不是灵感，是带回归验证的工程指标。短板也明显：依赖栈重（python-pptx、pptxgenjs、playwright、sharp、LibreOffice、Poppler 全要装），上手分是四件里最低。

## 四、51xtx-ppt-writer：把品牌冻成常量

如果说官方件信任流程，51xtx 信任的是**模板本身**。它的 SKILL.md 本质上是一本常量字典：每个颜色写成 RGB 三元组（51 学通信绿 #00B050、标题白 bg1）、每个字号写成 OpenXML 千分位（封面 4800、页标题 3200、正文 1600）、每级缩进写成 EMU 值（lvl1 342900），外加一整套可直接抄用的 python-pptx helper 函数（`add_run_51xtx`、`fill_title_51xtx`、`add_table_51xtx`）——模型要做的不是设计，是**把内容灌进已冻死的样式系统**。两处条款最见功力。一是版权意识：`中文字体使用 Source Han Sans ExtraLight，不使用黑体（有版权问题）`，禁令明确到字体族级别，还写明“可迁移到其他电脑使用（只需复制整个 skill 目录）”的自包含设计。二是密度工程：每页最多 10 个 bullet、内容不足 150 字符必须配 Mermaid 图（“至少1个/10页动态比例”）、备注长度与正文等长（“slides 100字 -> notes至少100字”，讲师可双屏照念）、FAQ 页答案放备注——这些不是审美条款，是**可执行的排版约束**。两条铁律（一次成文不许追加、保存前 `keep_only_new()` 删模板页）防的是 python-pptx 的两个经典翻车点。结尾附了一张与 Ericsson 模板的逐项对照表和 v2 修订记录（2026-04-26，显式设置 buChar、禁 emoji、Mermaid 配色统一）——Skill 也会发版，这是装机端难得的活证据。

## 五、ericsson-ppt-writer：一页规格表的极简主义

把 51xtx 和 ericsson 并排读是本期最有趣的对撞：同一种流派（模板冻结），体量差十倍。ericsson 的 SKILL.md 只有一页——三行字表映射（+mj-lt = Hilda Light 标题体、+mn-lt = Hilda 正文体）、三张表（布局 3 个、标题字号 2 档、正文层级 4 级）、一段 bullet 代码 diff、八条 Critical Rules，完。它不给你 helper 函数库，只给**模板承接不了的那部分规格**：一级内容用黑方块 U+25A0、二三四级用长破折号 U+2014、标题行 buNone——凡模板 slideMaster 已定义的，一个字都不写。这种“补丁文件”式写法的前提是模板文件本身够完整，好处是维护成本极低、模型上下文占用极小。两处细节暴露同款工程思维：层级表第 4 级直接标注 `(avoid)`——用负面标注引导模型规避而不是靠运行时拦截；`v3 — LPD Master Compliant` 的版本号说明它经过至少三次合规性重制。短板：三布局对复杂版式（对比页、图文混排变体）覆盖有限，防错条款比 51xtx 少一截（没有密度规则、没有图片安全区）。

## 六、frontend-slides：不产 pptx 的叛道者，把选择权还给用户

第四份文件走得最远：交付物直接换成零依赖单文件 HTML（“No npm, no build tools”），设计决策干脆不留给 Skill——**留给用户**。它的 Phase 2 叫 "Show, Don't Tell"：`People don't know what they want until they see it. Generate visual previews, not abstract choices`——先按用户情绪生成三份风格预览页让用户试穿拍板，再生成全片。这是四份文件里唯一的**交互剧本**：Phase 0 判模式、Phase 1 一次 AskUserQuestion 问齐用途/页数/素材/图片、Phase 2 情绪→三预览、Phase 3 图片管线（Pillow 圆裁、缩放、加衬边）+全片生成、Phase 4 PPT 反向转换。审美条款也最激进：`Avoid generic "AI slop" aesthetics`、显式禁令清单——`Never use these generic patterns: Purple gradients on white backgrounds, Inter, Roboto, or system fonts`——12 套命名风格预设（Bold Signal、Dark Botanical、Terminal Green……）本质是给“不撞款”上的保险。工程侧同样有铁律：视口适配是 `non-negotiable`（每页锁 100vh/100dvh + overflow hidden，字号间距全部 clamp() 化，700/600/500px 三档断点），配一张内容密度上限表（代码页最多 10 行、引用页最多 3 行），还内置 `prefers-reduced-motion` 无障碍条款。代价是交互轮次多（一次成片要过四五轮问答）、交付物不兼容 PowerPoint——它在四件里功能分不是最高，但设计分是唯一满分。

## 七、横向洞察：三种文体与一条设计权频谱

```mermaid
flowchart TB
    REQ["PPT request"] --> ROUTE{"Who decides the look?"}
    ROUTE -->|"the process"| OFF["pptx-official<br/>18 palettes + thumbnail loop"]
    ROUTE -->|"the template"| T51["51xtx / ericsson<br/>frozen brand constants"]
    ROUTE -->|"the user"| FE["frontend-slides<br/>3 previews, user picks"]
    OFF --> O1[".pptx with QA loop"]
    T51 --> O2[".pptx brand-inherited"]
    FE --> O3[".html in browser"]
```

四份文件并排，能提炼出 SKILL.md 写**样式密集型** Skill 的三种文体：**手册型**（pptx-official，过程步骤 + 门禁 + 验收环，长而全）、**字典型**（51xtx/ericsson，常量表 + 禁令 + 最小代码 diff，短而硬）、**剧本型**（frontend-slides，阶段化交互 + 用户在环，长而柔）。三条此前拆出的生态规律全部复现——强制整读门禁、禁令式条款、版本化修订——但本期多出一个新观察：**审美条款几乎清一色用禁令写**。四份文件没有一份写“请让版面美观”，全是“禁黑体、禁 emoji、禁 Inter/Roboto、禁紫渐变、禁竖排图表、禁第四级缩进”。这与 28 万星框架层“禁令与编排”的结论互为印证，且把禁令的适用域从安全扩展到了审美：**对生成式模型，负面清单比正面描述可靠**。另一个共性是四份文件都偏执于同一件事——防溢出（官方件量化溢出报错、frontend-slides 视口铁律、51xtx 图片安全区 EMU 区间、ericsson 每页 10 项上限）。“溢出”是演示物料的头号事故，四条路线殊途同归。

## 八、安装与使用

```bash
# 官方件：来自 anthropics/skills 官方仓库
npx skills find pptx          # 检索市场上架形态
npx skills add anthropics/skills
# 本会话在册入口：pptx / pptx-official / example-skills:pptx

# 装机端自包含件（51xtx 目录自带模板+OpenXML参照，整目录拷走即迁移）
cp -r ~/.claude/skills/51xtx-ppt-writer /path/to/another-machine/.claude/skills/

# ericsson 件：同目录拷贝；注意同机另有 -sc、-v2 变体，v3 规格以主目录为准

# frontend-slides：零依赖输出，但流程含多轮 AskUserQuestion，
# 使用时直接说 "用 frontend-slides 做一份 XX 的 HTML 演示" 触发
```

## 九、分维度排行榜与选型

- **功能完整度**：pptx-official > frontend-slides > 51xtx > ericsson（唯一能改老 pptx 的是官方件）
- **设计质量（SKILL.md 写法）**：frontend-slides > 51xtx ≈ pptx-official > ericsson
- **上手最快**：ericsson（一页读完）> 51xtx（拷目录即用）> frontend-slides > pptx-official（六项依赖）
- **品牌一致性**：51xtx ≈ ericsson >> 其余（常量冻结路线的独占优势）
- **对外路演**：frontend-slides；**对内知识分享**：51xtx/ericsson；**要交付且能改 .pptx**：pptx-official

选型一句话：**有品牌模板选冻结，没有模板选流程，拿不准审美选剧本，要改旧文件只有手册**。四份 SKILL.md 没有一份试图“教模型审美”——它们分别把审美锁进流程、常量、规格和用户的选择里。这大概就是样式密集型 Skill 的终极答案：模型不欠你一个审美判断，欠你一个不跑偏的边界。

## 参考来源

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
