PPT排版美化器

SKILL效率
效率 未标注权限 许可证不明确
安装这个技能

对已有 PPTX 做排版美化与合规验收(不生成内容、不改内容结构)。触发词:美化PPT、PPT排版优化、调整PPT版式、统一PPT风格、PPT换肤、修复PPT文字溢出、PPT字体统一、PPT配色调整、把这份PPT改好看、规范PPT格式、优化幻灯片排版、PPT太丑。输入任意 PPTX(含非本生态生成的),输出美化后的 PPTX。内置设计语言资产库(8类高手版设计语言),自动匹配推荐。自包含,不依赖 ray-ppt-generator;需要从零生成内容用 ray-ppt-generator。v2.1.0 机读化门禁(refine_gate_check.py)+ 可编辑性红线(铁律 4)。

一句话选型结论

按资料字段整理

PPT排版美化器是效率类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类效率 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_fb8bdb79/ray-ppt-refine
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

效率
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_fb8bdb79仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791736907
正文体量40.3 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
整理待办与日程

把零散任务收进清单,排出优先级。

批量处理重复任务

把固定动作做成模板,重复执行。

把流程写成清单

把口头流程整理成可复用的步骤。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在效率场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
PPT排版美化器当前 未标注权限 未标注 未标注 未标注 有
Nano PDF 文档 联网访问 ClawHub 市场 424.9 万 OpenClaw 有
自动更新程序 浏览器控制 ClawHub 市场 296.4 万 OpenClaw 有
Gemini 助手 联网访问 ClawHub 市场 254.7 万 OpenClaw 有
word DOCX 文档 联网访问 ClawHub 市场 239.6 万 OpenClaw 有
Excel XLSX 前端 联网访问 ClawHub 市场 227.0 万 OpenClaw 有

SKILL.md 全文

40.3 KB
模型实际读到的说明书原文,来自技能仓库

Ray PPT Refine — PPT 排版美化器(验收 + 改造)

> 定位:对已有 PPTX 做排版美化——检测排版问题、批量修复、一键换肤。只动排版,不动内容。与 ray-ppt-generator 正交互补(详见文末「与 ray-ppt-generator 的关系」表)。

四条铁律(先于一切流程)

  1. 只动排版,不动内容结构。能改的:字体、字号、颜色、配色、对齐、间距、缩进、元素位置、版式布局。不能改的:页数、标题文字、观点、正文内容、逻辑顺序——那是内容,归作者/generator 管。
  2. 失同步必提示,不另造演讲稿。若美化必须改动结构(拆页/合并页/改标题),先停下警告:"这会破坏演讲稿/备注的逐页同步",用户确认后才动;演讲稿由 generator 单源产出,本 skill 不生成演讲稿。
  3. 视觉 QA 驱动,不信代码信图片。代码证明"结构存在",不证明"版式舒服"——先转图片逐页看诊断,修复后再转图片复验,至少一轮 fix-and-verify。
  4. 主要文字必须可编辑(v2.1.0 新增)。美化后交付的 PPTX 必须保持:主标题/副标题/正文/关键数字/图表标签/页脚说明都在 PPT 原生文本框里,可被用户直接编辑;不得把文本转图片、不得把整页合成为一张图、不得为了"视觉效果"牺牲可编辑性。装饰性图形(logo、复杂插画、照片背景)可以是图片,但信息层必须是文本。判定红线:pictures=0 不是目标,但 text_as_picture > 0 就是失败。

常见崩坏模式(每次 refine 前必读,先于 5 步流程)

> 告诉 AI 要做什么效果一般,告诉它前人最容易在哪里塌效果更好。以下三种反模式均在真实执行中复现过,每次必须主动警惕。

反模式 1:口头宣布"美化完成"(最常见)

错误做法:
> 「4 页样张已完成美化,配色统一、字体一致,可以批量化了」(没跑任何脚本,没转任何图)

问题所在:判断"美化完成"的依据是 AI 自己的观感,不是程序输出、也不是 VL 核验。无论理由多充分,这句话都是 AI 在给自己写完成证书。

正确做法:
1. 执行 python scripts/refine_gate_check.py <refine后pptx路径> <诊断json>
2. 读取 <工作目录>/refine_gate_result.json
3. 只有 "passed": true 时才能进入批量修复 / 交付
4. 如果 "passed": false,按 user_code_errors[] 修复后重跑

> 视觉核验先试原生 Read:导出的 PNG 先直接 Read 一张——2026-09 起主流模型普遍原生多模态(deepseek-flash-V4.1、glm-flash-5.3 等),能看就直接看(更快、更省、细节不丢)。只有 Read 报读不了图时,才走 ray-ppt-ocr-eyes 降级链路(OCR+VL 逐页描述),见 references/refine-toolkit.md 第 2 节末尾——链路存在 ≠ 可以跳过,"模型看不了图"不是跳过视觉 QA 的理由。


反模式 2:跳过样张直接批量改 100 页

错误做法:
> 拿到 95 页 PPT,直接对每个页面跑统一字号缩放 + 统一字体替换,跑完才发现页脚被放大 / 卡片页被撑爆 / 表格列宽重排。

问题所在:每条规则都有边界(页脚白名单、卡片页排除、表格只换字体),这些边界要在样张上验证,不能在全量上裸跑。

正确做法:
1. 先选 3-5 页代表性样张(封面/章节页/典型内容页/表格页/卡片页各一),跑完整 refine 流水线
2. 对样张转图 VL 核验 + 跑 refine_gate_check.py,全部通过才进入批量
3. 批量时分页类型排除不适用规则(见「四条铁律」第 4 条 + 常见坑表)


反模式 3:默认"既然是美化就该全换",不先问体系

错误做法:
> 用户说"美化一下",直接做 2 轮样张(纸张手绘风→照片灰度化),用户看完才说"化工蓝体系更清爽,保留现有体系只补图"。

问题所在:「美化」是个有歧义的词——可能是「换配色体系」「换版式体系」「保留体系补手法(线语言/插图/留白)」三种之一。AI 默认第一种,用户往往想要后两种,导致 N 轮返工。

正确做法:
1. Step 3 诊断确认前必问:「换体系 or 保留现有体系补手法?」
2. 换体系 → 走「一键换肤」(6 套通用 + 化工安全配色)
3. 保留体系补手法 → 走 design-languages/INDEX.md 三因子匹配(差距 0.5 + 内容 0.3 + 偏好 0.2)从 8 类设计语言里选补充手法
4. 用户明确说"看着办"再走推荐路径,并明示推荐理由给用户否决权


何时用 / 何时不用

该用 不该用
有一份 PPTX,排版粗糙要美化 从零生成 PPT(用 ray-ppt-generator)
统一字体/配色/风格(换肤) 改内容、改文字、加页删页(内容问题)
修复文字溢出/元素重叠/对齐 PPT 内容本身要重写(回 generator 或手动)
把默认蓝/AI 痕迹改成专业版式 需要联网检索补内容(那是 generator 的活)

工作流程(5 步)

备份 → 视觉QA检测 → 诊断清单(用户确认)→ 批量修复 → 复验交付

Step 0:备份(强制)

改任何已有 PPTX 前,先复制备份:<原名>_backup.pptx。Win32COM 修改不可逆,备份是后悔药。

Step 1:读取解析 + 模式选择(沿用模板 vs 重新设计)

用 python-pptx 打开,遍历 slides/shapes/text_frames,摸清结构:页数、每页元素、字体分布、颜色分布。代码见 references/refine-toolkit.md 第 1 节。

量化诊断阈值(v2.1.0,2026-08-20 新增)——Step 3 诊断确认时按阈值自动判定,不再依赖描述性语言:

检查项 阈值(失败即触发) 说明
字体不统一 字体 Top1 占比 <70% 主字体不是 Microsoft YaHei → 需批量统一
配色混乱 主色在可见 shape 填充中占比 <40% 无主导色;含默认 Office 蓝 #0000FF → 建议换肤
字号过小 9-11pt 字号在正文 run 中占比 >30% 小字太多 → 需分档缩放(映射表见 refine-matrix.yaml)
字号过杂 字号种类 >6 种(排除页脚) 层级过多 → 建议分档收敛到 4-5 级
行距异常 段落 line_spacing 均值 <1.2 或 >2.5 行距太紧/太松 → 批量调 spacing
# 量化诊断示例(Step 3 确认前跑)
fonts = Counter()  # 所有 run 的字体
font_colors = Counter()  # 所有可见 shape 的填充色
body_sizes = Counter()  # 正文字号(排除页脚白名单)
for slide in prs.slides:
    for shape in slide.shapes:
        # ... 统计逻辑

top1_font_ratio = fonts.most_common(1)[0][1] / sum(fonts.values()) if fonts else 0
if top1_font_ratio &lt; 0.70:
    diagnostics[&quot;font_consistency&quot;] = {&quot;status&quot;: &quot;fail&quot;, &quot;top1_ratio&quot;: top1_font_ratio}

阈值细节见 references/refine-matrix.yaml。

模式选择(必做,美化的第一个决策)——问用户:

模式 做什么 适用
沿用模板 只优化内容排版——修溢出、统一字体/字号、对齐、图表配色对齐模板色系;不动母版、页眉页脚、背景、Logo、主题色等全局元素 已有品牌模板,只需优化内容
重新设计 含模板在内的整体视觉重塑(走下方"一键换肤") 无模板 / 模板太丑,要整体升级

> 拿不准时默认"沿用模板"——保守改造,不动全局元素。用户明确要换风格才走"重新设计"。

设计语言匹配(v2.0 新增,选"重新设计"时必做)——读 references/design-languages/INDEX.md,按三因子加权(差距 0.5 + 内容 0.3 + 偏好 0.2)推荐 2-3 套设计语言让用户选:

1. 提取目标 deck 版式特征(标题栏样式/列表页占比/卡片存在性/章节页样式/插图风格)
2. 与 design-languages/ 各档案的「特征指纹」比对 → 差距越大改造价值越高
3. 内容类型匹配(培训课件→B卡片徽章/A手绘线;技术汇报→C大数字/D深色科技;公文→E政务;事故→A时间线)
4. 用户偏好修正(&quot;化工蓝体系更清爽&quot;→偏好保留体系补手法;历史选过 +10 分)
5. AskUserQuestion 推荐 2-3 套让用户选(铁律:用户说&quot;美化&quot;≠要换体系,先问)

选定后:读该语言 profile.md(特征/改造路径)+ 看 layouts/*.png 样板 + 用 palette.json 配色 token + 复用 assets/ 素材。

Step 2:视觉 QA 检测(核心)

用 export_slides_to_images() 把每页导出 PNG,逐页看——不要只信解析数据。同时跑排版扫描器自动初筛。产出"问题清单"。检测维度见下「诊断模式库」。

Step 3:诊断清单 → 用户确认改造方案

把检测到的问题整理成清单,按优先级排列,给用户确认改造范围再动手:

发现 N 处排版问题:
🔴 严重:3 页文字溢出(P3/P7/P12)、全 deck 字体不统一(宋体混入)
🟡 建议:配色默认蓝无主题、5 页元素未对齐
🟢 可选:标题层级可再拉开
改造方案:①统一微软雅黑 ②应用[商务深蓝]配色 ③修复溢出页 ... 确认?

杠杆收敛(v2.2.0 新增,外部对比吸收):诊断清单可能列出 10+ 项,但汇报只挑 3-5 个最大改造杠杆(对观感提升贡献最大的项),其余归入"次要项(可后补)"一句话带过。原因:清单过长会分散用户注意力、拖延确认;多数时候 3-5 个杠杆改完 deck 已质变,次要项用户会主动要求补。判断口诀:"改完这 3-5 项,用户会明显觉得'好多了'吗?" 不会 → 杠杆没选对。

Step 4:代表性页面预览 → 批量修复

先做样张再批量(降低返工):不一次性改全部——先改 3-5 页不同类型的代表页(文字信息页 / 数据图表页 / 结论汇总页),转图给用户预览,确认风格对味后,再用 Win32COM 批量执行剩余页(保留渐变/阴影等效果,python-pptx 重排会丢效果)。修复方法见 references/refine-toolkit.md 第 3-5 节。

Step 5:复验交付(⭐ 机读化门禁,v2.1.0)

> 核心原则:门禁必须机读化(学 Mck gate_check),AI 不得口头宣布"QA 通过"。

  1. 先跑门禁脚本(必须,不得跳过):
python ~/.workbuddy/skills/ray-ppt-refine/scripts/refine_gate_check.py \
    &lt;refine后pptx路径&gt; &lt;诊断清单.json&gt; --outdir &lt;工作目录&gt;
  1. 读取 &lt;工作目录&gt;/refine_gate_result.json:
    - &quot;passed&quot;: true → 进入转图复验
    - &quot;passed&quot;: false → 修复 user_code_errors[] 列出的问题,重跑门禁
  2. 转图 VL 核验(门禁覆盖不到的视觉层面:色感/留白感/设计感)
    - 重跑 Step 1 的 export_slides_to_images() 导出受影响页,逐页复验——一个修复常引入新问题
    - 重点看:样张一致性、新字体渲染效果、配图协调性、档位/卡片/警示条风格统一
  3. 门禁 + VL 全绿才交付;回 Step 4 再修一轮(最多 2 轮,2 轮仍有问题说明要拆方案 B 重写脚本)

排版问题诊断模式库

问题模式 检测方法 修复方法
文字溢出 文本框文字多/未 word_wrap;图片中文字顶到边框 启用 word_wrap、缩字号、框加大、或拆栏
字体不统一 扫描 run.font.name,统计非微软雅黑(宋体/Calibri 混入) Win32COM 批量统一 Microsoft YaHei
配色混乱 颜色种类过多 / 默认蓝 / 无主色 一键换肤:应用配色方案库(主色 60-70%)
层级不清 标题正文同字号 / 无灰阶 拉开字号对比(标题大、正文小),用灰阶分主次
对齐/间距 元素左边缘不齐 / 间距忽大忽小 统一左对齐、间距 ≥0.3"、边距 ≥0.5"
元素重叠 图片中文本框/形状碰撞 移位、调层级、缩尺寸
AI 痕迹 标题下装饰线 / 全 deck 重复同一版式 / 纯文字页 删装饰线、变化版式、加视觉元素
图片问题 越界 / 比例失调 / 与页脚碰撞 等比缩放、归位、避开页脚区
图标素材来源(v2.5 新增) 需要"小图标/徽章"却不知道该去哪拿:iconfont 主力格式是 SVG,python-pptx 原生不支持(实测 add_picture 对 SVG 抛错),venv 无 cairosvg/svglib ①单色简单语义图标(盾牌/警报/齿轮)→ iconfont 下 PNG(透明底)直接做图标池,或拆 SVG path 用 FREEFORM 重绘(保矢量可编辑);②多色复杂插画 → 走 ImageGen/图库,不从 iconfont 硬取;③图标字体(iconfont 前端玩法)python-pptx 无字形支持,不用。完整能力边界见 generator code-templates 2.25
图文不协调 图片与内容无关(如化工安全页配沙滩风景)/ 图上有 AI 乱码文字 / 图风格与全 deck 不统一(卡通+写实混搭)/ 图遮正文或压字对比度不足 ①内容无关→提示用户换图(给建议,不自行换——换图是内容决策,归 generator);②AI 乱码字→裁掉文字区或建议重生成(无文字版);③风格混搭→统一为同一风格;④压字→加半透明蒙版或移位
图表混乱 图表带网格线 / 系列颜色杂 / 数据标签挤 去网格线、统一配色、只突出关键数据系列
重点淹没 核心信息和普通信息一个样 识别关键信息,用加粗/放大/强调色突出,引导注意力
线性元素缺失(v1.2 新增) 统计细长形状/箭头/横线数量:时间线/流程/事件链页无线元素(轴线/连接线/分隔线)→ 视觉"块状呆板" 补"线"语言:细长矩形(宽>>高)做轴线/分隔线、箭头连接流程节点、虚线引导阅读路径。参考高手版手法:447 个细长 freeform(高均 0.3")构建线性节奏
版式单调(v2.3 新增) 连续 3+ 页都是"标题+列表块";内容类型与版式不匹配(时限内容用列表、分级内容用表格) 按内容类型换版式(6 个实战验证手法,源码在 generator code-templates 2.16-2.21):硬时限→横向时间轴(时限徽章+轴线+说明卡);目录/职责/要点→卡片矩阵(左色条+数字圆点);DO/DON'T→红绿灯对比(左绿右红+中央信号灯);梯度考核→热力图表格(整行绿→红底色);分级上报→双通道地铁图(每通道一条线+站点);级别划分→阶梯图(台阶逐级升高)。这是"美化改结构"的最大杠杆
图形隐喻半成品(v2.3 新增) 页面声称"环形流程/循环"但节点间无连线箭头(视觉=散点);旋转椭圆拼花/拼人形等复杂隐喻造型生硬 二选一:①补全连接语言(弧形箭头/循环连线)让隐喻成立;②退回朴素布局(条带/步骤条)——隐喻做一半不如不做。复杂有机造型(花瓣/五角)不推荐:python-pptx 旋转椭圆拼贴效果生硬
配色微调无感(v2.3 新增) 换肤用了邻近色(如 #005293→#0D3B66),用户第一眼"看不出变化" 换配色要么拉开色相/明度差距(蓝→绿/深蓝→暖灰),要么先问清意图:用户要"变个样子"就拉大差距,要"更沉稳"就保留体系只补手法(铁律 3 的量化版)
重排不减密(v2.3 新增) 美化轮把原页文字原样塞进新图形(卡片/时间轴/阶梯),信息密度不降,用户评"换汤不换药/效果一般" 重排必须伴随减法:每页先定"主角"(3 秒内先看到的一个图形/数字/大字),描述文字砍 30%,次要信息下沉为小字或页脚。高手版式的本质是"每页一个主角+大量留白",不是"新形状装旧内容"
网格失准(v2.4 新增) 元素间"说不上来的乱":对齐看起来差 1-2px、间距忽宽忽窄、徽章与文字框错位——dump 坐标发现离散(如 315 个不同坐标值,仅 4% 落在常见倍数上) 对齐到 20pt 设计网格(0.278" 基准格,页边距 40pt=2 格、卡片间隙 8-10pt=半格):改版式/新增元素时坐标一律取网格倍数;字号同步取整(无 10.8/12.5 小数档)。验证:重读文件统计坐标网格命中率,目标 ≥60%(手法已回 generator 2.22 gx(n) 函数)
插图风格未统一(v1.2 增强) 有图但风格混搭 / 彩色图与全 deck 冷色系不协调 统一灰度/滤镜是排版范畴修复(PIL 灰度化即可,不动图内容):全 deck 图片统一灰度或同一色调后,视觉立刻统一。高手版 51 张图全部灰度处理(含封面/分区页全页背景图 + 要素页固定位置插图)

> 判断口诀:先严重后建议——溢出/字体/配色是硬伤,对齐/层级/痕迹是提升,线/图是质感。

设计哲学:AI slop 反模式警告(v1.4 新增,吸收 GH 27k 星 frontend-slides)

> 模型默认会收敛到平庸的通配设计("AI slop"审美)——美化前先认通病,再给对策:

通病(默认会犯) 对策(要主动做)
均匀配色、无主色 dominance 主色占 60-70% 视觉权重,1-2 辅色 + 1 强调色,绝不平均分配
居中排版的"填充感" 正文左对齐(只有标题/封面居中);不整页纯文字
默认蓝 / 无主题色 从主题文化/行业汲取配色(化工→安全蓝/纸张手绘风),不用默认值
为装饰而装饰(角部图案/无意义图形) 每个视觉元素服务信息层级,删掉会让页变差的才留
同质化重复版式 全 deck 不重复同一版式;每页至少一个差异化视觉锚点

自检:"这页删掉任何一个元素会变差吗?" 不会 → 删掉(减优于加)。

视觉语言参考(v2.0 起指向设计语言资产库)

> 完整资产库:references/design-languages/INDEX.md(8 类分类索引 + 自动匹配规则)+ 每类 profile.md(特征指纹/配色/改造路径)+ layouts/ 样板图 + palette.json 配色 token。
> 下方表格是已归档语言的快速速查;完整档案看对应文件夹。

编码 设计语言 一句话 档案路径 状态
A 手绘线语言 用"线"建立视觉节奏(447 freeform)+ 暖纸色极简 + 固定位置灰度插图 design-languages/A-handdrawn-line/ ✅ 已归档
B 卡片+徽章 浅色卡片矩阵 + 1:1 方形徽章 + 功能色条 + 大数字 + 底部通栏提示 D:/RayClaw/skill-archives/ray-ppt-refine-B-card-badge-20260828/(62MB assets 外置归档,2026-08-28) 📦 已外置
C 大数字信息图 120pt 半透明数字背景 + 数据突出 + 章节编号 design-languages/C-big-number/ ⬜ 空档案
D 深色科技风 深空蓝/黑底 + 霓虹强调 + 科技感 design-languages/D-dark-tech/ ⬜ 空档案
E 政务公文风 红头文件 + 仿宋 + 严谨庄重 design-languages/E-gov-doc/ ⬜ 空档案
F 培训卡通插画 扁平人物插画 + 鲜艳配色 + 亲和 design-languages/F-cartoon/ ⬜ 空档案
G 极简杂志风 大留白 + 衬线标题 + 杂志排版 design-languages/G-minimal-magazine/ ⬜ 空档案
H 数据大屏风 深底高亮 + 图表密集 + 驾驶舱 design-languages/H-data-dashboard/ ⬜ 空档案

A 手绘线语言速查(RBPS 意识培训 90页)

手法 高手版实现 适用场景 python-pptx 可实现性
手绘线语言 447 个细长 FREEFORM(高均 0.3"):时间线轴线/连接线/分隔线/箭头 时间线、流程、事件链、目录页——用"线"建立视觉节奏,打破纯块状 细长矩形 + 箭头形状 + 虚线格式(line.dash_style)
固定位置插图 要素/章节页右侧统一位置 (6.2,1.1) 放 3.3×3.8 灰度示意图,34 张位置完全一致 多页同构内容(要素页/条款页)——右侧统一插图形成"卡片感" 图片 + 统一坐标常量,refine 只负责灰度统一与归位
分区页全页背景图 章节过渡页用全页灰度工业场景图 + 大字标题,比纯色过渡页有场景感 封面/章节过渡页 全页图片 + 压暗层(PIL 调暗或半透明矩形)
暖纸色极简 #F4F2EE 米白底 + #9D5A37 棕褐强调 + #252525 近黑正文("图纸感") 工程师/技术受众的培训课件 配色方案库「纸张手绘风」(见 refine-toolkit.md 第 4 节)

B 卡片+徽章速查(General EHS Onboarding 23页)

手法 高手版实现 适用场景 python-pptx 可实现性
卡片化布局 浅色圆角卡片 + 功能色左条 + 标题 + 描述,网格自适应(1×3/2×2/2×3) 3-6 条短描述列表页 cards() 布局函数(common_en.py 已验证);只适合短描述(英文≤130 字符)
1:1 方形徽章 每卡片配方形徽章(图标/照片缩略),"徽章+标题+正文"卡片语言 卡片页 0.55" 徽章 + 白底圆角衬垫 0.61";⚠️ 与右侧竖图同池必冲突,需替换
功能分色 绿=健康/权益、蓝=法规/职责、红=警示、橙=注意 全 deck 功能色常量(PRIMARY #005293/ORANGE #E67E22/RED #C0392B/GREEN #1E8E4E)
大数字关键数据 核心指标(80分/30年/6小时)36-40pt 单独呈现 数据页 独立文本框放大字号
底部通栏提示 关键页底部全宽提示条(白字加粗居中) 关键警示页 banner() 双位置(bottom y=6.45 / top y=1.18,内容满页用 top)
章节预告卡片 章节页底部居中 3 张深蓝卡片+功能色顶条 章节页 section() previews 参数

> 完整档案(改造路径/素材/经验引用):已外置归档 D:/RayClaw/skill-archives/ray-ppt-refine-B-card-badge-20260828/(含 profile.md),需要时按路径取用

配图落地三坑(v1.3 新增,实战验证 2026-08-17)

> 给已有 deck 配图(灰度照片/插图)时的高频坑与解法:

坑 现象 解法
横向图进竖框留白大 1200×800 照片放进 3.3×4.4 竖框,按比例缩放后只占 3.3×2.2,上下空 2"+,图显小(用户反馈"图小空白大") 装饰插图用 cover 不用 contain:居中裁成与框同比例再撑满白框(PIL crop),零留白。代码见 refine-toolkit.md「配图工具」
白框与图片错位 白框按"图片缩放尺寸"定位、图片按"传入框"居中——两个基准不一致 → 图片偏下、白框漏底(用户反馈"图片靠下漏白框") 单一基准:先算图片实际位置(框内居中),白框围绕图片实际位置外扩(四边各 0.05")
插图与相邻元素重叠 插图底边 6.65 撞底部说明条 6.35(重叠 0.3") 配图后必跑专项检查:每张插图底边 vs 底部说明条/卡片标题位置,插图高限按最矮相邻元素预留 0.1"+

配图决策链:先扫描空白(右半区→网格→精确小区域逐层收敛)→ 有空白直接配 → 无空白不要强行塞图(会遮内容)→ 改用布局让位(公共函数收窄文字宽,批量让出侧边栏)→ 让位后仍验证插图与相邻元素。

图片来源决策(v1.5 新增,2026-08-18 三图库实测)

> 配图素材从哪来?按「通用主题 vs 专业主题」分流,下载图必须 VL 核验。

来源 适用 实测结论(2026-08-18) 注意
ImageGen 生成 专业化工安全主题(受限空间/动火/中毒救援/危化品储存) 语义 100% 可控、风格统一、竖版 3:4 直接适配 每张带"AI生成"水印 → PIL 裁右下角 8%×6%;生成后 VL 核验内容防跑偏
Pexels 下载 通用主题(灭火器/安全帽/脚手架/警示牌) ✅ 可访问;搜 "confined space entry" 有可用免费图(如 7417585 灰度警示牌),但专业好图在 iStock 付费赞助位,免费结果混隧道/星空等无关图 必须英文关键词;逐张 VL 核验真实内容(9 张池图 2 张跑偏:可口可乐产线/戴头饰女性)
Pixabay 下载 通用主题 ✅ 可访问;中文搜索歧义严重——"受限空间"匹配成"太空/宇宙",前 10 全跑偏 用英文关键词 "confined space"
Unsplash 下载 通用主题 ⚠️ 直连超时,国内访问不稳定 不优先

决策规则:
1. 通用主题(PPE/消防/警示/高处)→ 优先下载图(免费),逐张 VL 核验再入映射
2. 专业主题(特殊作业/中毒救援/危化品工艺)→ ImageGen 生成(语义可控)
3. 无论哪条路,绝不按文件标题猜主题(P9 错配教训:按 "construction worker" 想当然标高处,实为货仓工人)
4. 风格统一优先:下载照片是彩色实拍,与灰度扁平插画混搭会破坏统一 → 混用时统一灰度化(PIL 灰度)

一键换肤(配色方案库)

> 换肤前先确认意图(v1.4.1 新增,2026-08-17 实战教训):用户说"美化/换肤"不等于要换配色体系——可能只想保留现有体系补手法(线语言/插图/留白)。动手做样张前先问一句:"换体系 or 保留现有体系只补手法?"(本次实战:连续做了 2 轮样张——纸张手绘风→照片灰度化,用户才说"化工蓝体系更清爽",若先问可省 2 轮样张)

检测到"配色混乱/默认蓝/无主题"时,推荐换肤。内置 6 套通用 + 化工安全配色(RGB 见 references/refine-toolkit.md 第 4 节)。按场景推荐 2-3 套让用户选:

场景 推荐配色
商务汇报/年终总结 商务深蓝 / 炭灰极简
技术分享/产品发布 科技深空 / 商务深蓝
培训课件/教学 暖陶简约 / 青绿信任
化工安全/危化品 化工安全配色(SAFE_BLUE 系列)
工程师/技术受众培训 纸张手绘风(#F4F2EE 米白 / #9D5A37 棕褐 / #252525 近黑,图纸感)

换肤 = 批量替换主色/辅色/强调色 + 标题栏/页脚配色,不动内容文字。

常见坑与排查

问题 原因 解决
Win32COM 改完效果丢失 python-pptx 重写会丢渐变/阴影 用 Win32COM 修改,不用 python-pptx 重排
颜色没改成 .RGB 是 BGR 顺序 用 rgb_to_bgr() 转换
COM 索引报错 COM 索引从 1 开始,非 0 遍历从 1 起;True = -1
文件被占用无法写 直接改被打开的文件 先关 PowerPoint;先写临时文件再替换
&#x27;method&#x27; object is not iterable(COM 遍历文本) TextRange.Paragraphs / Paragraphs(pi).Runs 是方法不是属性 必须带括号调用:tr.Paragraphs()、Paragraphs(pi).Runs(ri),索引从 1 开始(0 越界)
bash 内联 Python 改 PPT 路径失效 bash 吞掉反斜杠:D:\Work 变 D:/Work COM 工作流一律用独立 .py 文件(Write 工具写盘再执行),不用 python -c 内联
os.remove 报 SAFE_DELETE_FAIL_CLOSED 沙盒回收站不可用,删除 fail-closed 拒绝 不删旧文件,直接 SaveAs 覆盖目标路径
批量改字号把页脚/页眉改坏 页脚页眉也是文本 shape,被统一缩放规则命中 先按文本内容("Rianlon"/"Page"/页码)识别页脚页眉元素,白名单排除;页眉标签单独给较小增量
表格字号缩放变形 表格单元格用 tr.Paragraphs(pi).Runs(ri) 遍历,直接改 .Size 会触发列宽重排 表格只换字体不换字号;字号缩放仅对普通文本框生效
改完演讲稿对不上 动了页数/标题 违反铁律 2——应提前警告,已改则提示回 generator 重导
横向图进竖框留白大 contain 缩放(按比例)在竖框上下留白 装饰插图用 cover(居中裁切撑满框),见「配图落地三坑」
白框与图错位 白框基准与图片居中基准不一致 白框围绕图片实际位置外扩(单一基准)
插图撞底部条 插图底边 > 相邻元素顶部 插图高限按最矮相邻元素预留 0.1"+
批量注入参数错位(banner 插进函数参数列表 / icons 注入错页) 跨行正则 .*?\) 在多行函数调用上不可靠,插入点定位错 用括号深度匹配定位完整调用块(p\d+ = 函数名\( 起,数括号找配对 )),再精确 Edit;注入后跑一致性核对脚本逐页比对
徽章与右侧竖图同页重复 图标池与 PAGE_ILLU 右侧图共用同一资产池 → 同页出现 0.55" 徽章 + 3.7×5.2" 大图同图 替换右侧竖图(约束:不在本页 icons + 不与前后页大图重复);QA 按"同页 sha1 重复"判定,跨页徽章复用放行
banner 与内容重叠 banner 默认 bottom 但内容区满 先量内容区底边 y,banner pos='bottom'(y=6.45 高 0.4)或 pos='top'(y=1.18 高 0.3)二选一,间隙 ≥0.02"

卡片图标徽章 + 通栏警示条(v1.5.4 新增,Plan C 实战)

图标徽章(E7):给卡片加 1:1 方形照片徽章,形成"徽章+标题+描述"卡片语言。
- 零外部资源:用现有灰度写实方形图(1024×1024)直接缩略即可;白底圆角衬垫 0.61" + 照片 0.55"(衬垫外扩 0.03")
- 布局避让:有徽章时标题右移(x=徽章右+0.15")、描述下移(y+0.72");无图标时回退原位(标题 x+0.35"、描述 y+0.62")
- 注入方式:cards() 加 icons=[...] 参数(路径列表与 items 等长);映射表单独存 JSON(页→每卡图标 key),脚本读取注入
- 同池冲突红线:徽章图标池与右侧竖图(PAGE_ILLU)共用资产时,同页必出现"大图+同图小徽章"——右侧竖图自动替换(不在本页 icons + 不与前后页大图重复 + 语义分组优先)

通栏警示条(E8):关键警示页加全宽色条(白字加粗居中),比普通文字醒目。
- banner() 双位置:pos=&#x27;bottom&#x27;(y=6.45 高 0.4)用于底部有空间页;pos=&#x27;top&#x27;(y=1.18 高 0.3)用于内容满页(先量内容区底边,防重叠)
- 配色遵循功能分色:RED=警示、ORANGE=注意

反例黑名单(❌ 不要做)

❌ 改内容——页数/标题/观点/正文文字(那是内容,归作者 / generator)
❌ 用 python-pptx 重写排版——会丢渐变/阴影效果,改用 Win32COM
❌ 不备份就改——Win32COM 不可逆,先 _backup.pptx
❌ 只信扫描器不看图——数据给线索、图片给真相,修复后必须转图复验
❌ 改结构不警告——动了页数/标题却不提示演讲稿失同步

与 ray-ppt-generator 的关系

ray-ppt-generator ray-ppt-refine(本 skill)
定位 内容引擎:从无到有 排版美化器:从有到好
输入 材料 / 主题关键词 任意已有 PPTX
输出 PPTX 初稿 + 演讲稿 MD 美化后的 PPTX
演讲稿 单源产出(权威源) 不产出,失同步仅提示

独立演进:本 skill 聚焦"最强版式美化器"(检测 / 换肤 / 修复);generator 聚焦"最强内容生成器"。经验由 ray-self-reflection 回流,高手由 ray-skill-evolve 学习。

实战经验

> 经验已按主题分类到 references/experiences/(overflow / layout-pitfalls / image-assets / template-skin),含 Problem/Root Cause/Fix/Rule 四字段结构化格式。
> 本区只保留最近 3 条(滚动窗口)+ 待回流的 pending 条目索引。完整历史见 references/experiences/README.md。

最近 3 条(滚动窗口)

  • 2026-09-04|[LRN-20260904-002]|场景:对照拆解用户自做美化版(豆包 AI 生成 deck vs python-pptx 原版,21 页逐 shape 量化对比)|经验:①"看不见的结构"才是观感差距主因——20pt 设计网格命中率 73% vs 4%(模板已回 generator 2.22)、序列同色相明度递进 vs 五色相乱跳(generator 2.23)、文字覆盖层解耦(generator 2.24);②外部 AI 生成 deck 指纹识别:内嵌"XX AI 生成"角标 PNG(zipfile 翻 media/ 一眼定位)、Noto Sans SC 字体、全 AUTO_SHAPE 文字覆盖层结构(底层 roundRect 底色+上层透明 rect 文字)、Tailwind Slate 灰阶(#334155/#94A3B8/#E2E8F0)——对比分析第一步先验指纹,判断对手是"人手改"还是"AI 工具生成";③对比分析方法论:dump 两版全部 shape(类型/坐标/字体/字号/颜色/文本)→ 全局统计(字体占比/字号阶梯/色板 census/网格命中率)→ 代表页逐 shape 对照;量化数据比"感觉更整齐"有说服力;④内容层确认:好版本真做减法(P13 字数 -30%、P17 -52%)+ 正向补强("上报不追责"激励、"如有疑问联系安全科"出口)——印证诊断库"重排不减密"行|死路:肉眼对比只说出"换了字体/换了颜色"表层差异,漏掉网格系统这类结构性差异|来源:事故制度 deck 用户美化版拆解|计数:1|状态:resolved
  • 2026-09-04|[LRN-20260904-001]|场景:PPT 高手建议落地重做(事故制度 deck 21 页 v2)|经验:①6 个版式手法验证有效(时限时间轴/卡片矩阵/红绿灯/热力图表格/地铁图/阶梯),已升格为 generator code-templates 2.16-2.21,refine 侧入诊断库"版式单调"行的修复指向;②三条反面教训入诊断库:图形隐喻半成品(环形无箭头=散点)/ 配色邻近色切换用户无感(#005293→#0D3B66 第一眼无变化)/ 重排不减密(新形状装旧内容="换汤不换药",用户"效果一般"的根因);③QA 链路实战确认:越界+重叠+文本流三脚本全绿 → COM 导 PNG 逐页目检,6 轮 fix-and-verify 收敛;踩坑:Inches() 收到裸 float 产生天文坐标(Emu 减法必须先转 in 再算)、heredoc 批量 replace 吞行(补丁后 grep 复核递增行)|死路:倒置金字塔用旋转 180° 三角形+叠加文字(文字溢出斜边落白底);改用宽度递减圆角条(文字框内永安全)|来源:事故管理制度宣贯 PPT v2 美化轮|计数:1|状态:resolved
  • 2026-08-27|[LRN-20260828-001]|场景:无多模态模型的视觉 QA 断头|根因:refine 全流程(铁律 3/反模式 1/Step 2/5)假设"导出 PNG 后模型能看图",DeepSeek 纯文本模型直接 Read PNG 报"不支持读图",视觉 QA 链路断头|Fix:toolkit 第 2 节补降级链路——COM 导 PNG(附 PowerShell 原生 COM 备选 + 首次调用无输出陷阱)→ ray-ppt-ocr-eyes(OCR+VL 双层,opencode-go)逐页核验;路径必须 Windows 格式(Git Bash /e/ 不认);左右分栏页 OCR 合并行是假象,布局判断以 VL 层为准。已在 generator v3.14.0 的 extend-deck.md 同步沉淀(23 页新增页逐页验证通过)|死路:只跑越界/重叠几何检测就交付(LRN-20260818-001 已证明几何检测会假通过)|来源:马来西亚 EHS 课件 47 页扩充|计数:1|状态:resolved(⚠️ 2026-09-12 补记:本条前提已变——原生多模态已成主流模型常态,Read PNG 通常直接可用;本条降级链路改为「读不了图时」启用,判定以实测为准)
  • 2026-08-19|[LRN-20260819-008]|场景:95页英文 deck 套用公司中文模板|经验:模板套用 ≠ 硬套模板文件——提取 DNA 重绘。只读解析模板(clrScheme + shape 明细 + OCR)提取 DNA(品牌色/Logo/标语/版式语言),关键页重绘(封面/章节/结束),内容页只嵌品牌元素。QA 用"Logo 页数=82/96"验证注入正确|死路:直接以模板文件为基础修改(中文残留+结构丢失)|状态:pending

pending 条目索引(待回流主流程)

  • references/experiences/overflow.md:LRN-20260817-003(重叠检测行高估算)
  • references/experiences/layout-pitfalls.md:LRN-20260817-002(自产 deck 改源)/ LRN-20260819-003(高手版六语言)/ LRN-20260819-007(资源自检)/ LRN-20260819-008(DNA 重绘)/ LRN-20260904-001(图形隐喻纪律+Emu 减法坑,已入诊断库可毕业)
  • references/experiences/image-assets.md:LRN-20260818-001(行高估算器)/ LRN-20260818-002(图库规模)/ LRN-20260818-003(VL 判定)/ LRN-20260819-002(页面级 VL 核验)

完整 LRN 列表(含 Problem/Root Cause/Fix/Rule 结构化字段)见 references/experiences/*.md。

参考资料

  • references/refine-toolkit.md — PPTX 读取解析、排版扫描器、Win32COM 批量修复、配色方案库、转图片 QA(按需加载,复制即用)

维护记录(最近 3 条)

日期 变更
2026-09-12 v2.5.1:视觉核验前置检查(原生读图优先)。铁律区「当前模型无多模态时」条目改为「先试原生 Read,只有读不了图才走降级链路」——2026-09 起主流模型普遍原生多模态(deepseek-flash-V4.1、glm-flash-5.3 等),原表述会诱导跳过原生 Read 直接调 OCR;历史条目 LRN-20260828-001 补记前提已变。
2026-09-04 v2.5.0:图标素材能力边界(iconfont 可用性评估,探针实测)。诊断库新增「图标素材来源」行——python-pptx 实测 SVG 原生不支持(add_picture 抛 UnidentifiedImageError)、PNG 直接可用、venv 无 cairosvg/svglib、图标字体不支持。单色简单图标→PNG 池或 FREEFORM 重绘;多色复杂插画→ImageGen/图库。完整见 references/changelog.md。
2026-09-04 v2.4.0:对照拆解用户自做美化版回流(豆包 AI 生成 deck,21 页逐 shape 量化对比)。①诊断库新增「网格失准」行(20pt 网格命中率 73% vs 4% 是观感差距主因,修复=坐标对齐 20pt 格+字号取整);②LRN-20260904-002(外部 AI deck 四指纹 + 对比必须 dump 量化);③内容层减法实证。完整见 references/changelog.md。
2026-09-02 v2.2.0:进化轮(对比外部 PPT 美化领域 Top 候选,克制吸收 1 项)。Step 3 诊断清单新增「杠杆收敛」——汇报只挑 3-5 个最大改造杠杆,次要项一句话带过(防清单过长分散注意力)。
2026-08-28 v2.1.1:实战回流(无多模态模型视觉 QA)。refine-toolkit 第 2 节补降级链路(COM 导 PNG → ray-ppt-ocr-eyes OCR+VL 逐页核验 + PowerShell 原生 COM 备选);反模式 1 补「链路存在 ≠ 可跳过」;新增 LRN-20260828-001。与 generator v3.14.0 extend-deck.md 互引。
2026-08-20 v2.1.0:进化轮(对比 Mck/GordenPPTSkill/CyberPPT)。减法:LRN 经验按主题拆 references/experiences/*.md(overflow/layout-pitfalls/image-assets/template-skin,Problem/Root Cause/Fix/Rule 四字段);维护记录完整版卸 references/changelog.md。加法:①反模式区独立成节(先于 5 步流程);②铁律扩为 4 条(新增"主要文字必须可编辑"红线);③机读化 QA 门禁 scripts/refine_gate_check.py(passed 由代码判定,禁口头宣布);④能力边界矩阵 references/refine-matrix.yaml;⑤Step 3 诊断量化阈值(字体占比/主色占比/字号分布)。
2026-08-19 v2.0.1:B 类布局模板沉淀收尾——layout_templates.py 补齐 33 张徽章图实现完全自包含(资源完整性自检:_asset() 引用↔文件逐一比对,见 LRN-20260819-007);B-card-badge/profile.md 新增「可复用代码模板」节(9 函数速查 + demo 验证);INDEX.md「使用方式」加代码模板入口;demo 样板图 D01-D04 归档 layouts/。
完整历史:references/changelog.md(v1.5.4 及更早版本)

常见问题

5 问
答案由本站依据条目字段整理
PPT排版美化器怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_fb8bdb79/ray-ppt-refine。安装方式为未标注。装完刷新技能列表或重开客户端。

PPT排版美化器支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

PPT排版美化器权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

PPT排版美化器收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

PPT排版美化器用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。