本文へ移動
cccskills
無料GitHub で公開

add-slide-to-deck

往已有原生 PPTX 追加风格一致的新页,加一页或成组多页(如一个新场景)皆可。当用户要求「在这个 PPT 里加一页」「加几页」「追加一个场景」「模仿这个 PPT 的风格加页」时使用。适用于原生可编辑 PPTX(PptxGenJS / PowerPoint 生成),不适用于 ppt-master 的 SVG 整副生成场景。

インストール方法を見る

含まれるファイル(2)

  • SKILL.md6.6 KB
  • _meta.json110 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

往现有 PPTX 追加风格一致的新页

路由判断(先做)

  • deck 是原生可编辑 PPTX(打开 slide XML 有大量文本框)→ 用本 skill(python-pptx 直接追加)
  • deck 是 ppt-master SVG 生成 / 用户要整副重做 → 用 ppt-master
  • 用户说「用 ppt-master」但 deck 是原生的 → 向用户说明:加一页用 python-pptx 直接追加才能无缝合入,ppt-master 产出的单页无法合进原生文件

流程

0. 内容提炼(先于一切排版)

skill 只保证「形」像,内容质量靠这一步:

  • 要点从源材料(docx / 文章 / 稿件)忠实提取:关键数字、URL、操作路径、版本号一个不丢;不虚构、不过度压缩
  • 页数由内容定:先按主题分组(痛点 / 选型 / 体验 / 技巧…),每组一页;放不下拆页不删内容
  • 单卡片要点 ≤5 条,每条 ≤21 字(12pt 防换行,实测依据见第 5 节)
  • 句式跟参照页(如「特点:…」「适用:…」前缀风格);导语一句话点透本页立场
  • 图片跟随要点走:每张图对准一个要点,遵守「一页一图」

1. 提取现有样式(不要凭记忆猜配色)

# 用托管 venv:~/.workbuddy/binaries/python/envs/default/bin/python(系统 python 缺 pptx)
from pptx import Presentation
import re
p = Presentation(path)
# 全局统计实际用色/字体/字号
for s in p.slides:
    x = s._element.xml
    # srgbClr val / typeface / sz= 出现频次 → 定主色、正文字号
# 逐 shape dump 参照页:位置(inch)、prstGeom、solidFill、run 的 sz/bold/color

参照页选择标准:选与目标页同构的页——要放卡片就找有卡片的页、要放图就找放图的页;无完全同构页时选最接近的,缺的部分从相邻页补。

重点记录页头五件套(数值每份 PPT 都不同,必须现场量;下面仅示例格式):kicker(bold 小字、accent 色、左上角)、标题(最大号 bold 主色)、引导条(accent 色小横条)、导语(灰色正文)、页脚(竖条 + 小字)。逐 shape dump 参照页拿:位置(inch)、prstGeom、solidFill 色、run 的 sz/bold/color。换一份 PPT 这些值全部重新提取,禁止沿用上次的具体数值。

2. 确定插入位置与编号

逐页打印标题找章节边界(sh.text_frame.text),编号顺延全 deck 最大小节号(deck 的 kicker 序列可能本身错乱,勿照抄上一页),用 sldIdLst 移动到目标位置:

sldIdLst = prs.slides._sldIdLst
ids = list(sldIdLst); new_el = ids[-1]
sldIdLst.remove(new_el); sldIdLst.insert(目标索引0基, new_el)

3. 写新页(要点)

  • 版式:list(prs.slides)[参照页idx].slide_layout
  • 中文字体必须同时设 latin + east-asian,字体取参照页实测值,不硬编码(示例里的「微软雅黑」仅因那次 deck 实测用它):
    rPr = run._r.get_or_add_rPr()
    etree.SubElement(rPr, qn('a:ea')).set('typeface', <参照页实测字体>)
    
  • 列表标记用椭圆小圆点(MSO_SHAPE.OVAL 0.08×0.08,颜色取本份 PPT 的 accent 色),不用方块(用户全局偏好:圆点标记)
  • 正文 ≥12pt;换行按目标 PPT 实测字宽预估(中文字符数随字号/卡片宽度变,渲染验证后校准);条目间距、卡片内边距均从参照页量出来
  • 卡片样式(底色/标题带高度/白字字号)照参照页抄,不自创
  • 背景一致性:参照页 layout 只继承母版元素,直接画在页面上的全页背景(顶条、底色块)不会被继承——渲染后对比新旧页底色/页顶元素,有则需重绘
  • sp.shadow.inherit = False;新文件另存(_新增xx页.pptx),不覆盖原件

4. 视觉验证(必做)

/Applications/LibreOffice.app/Contents/MacOS/soffice --headless --convert-to pdf --outdir /tmp/check <pptx>
pdftoppm -f <页码> -l <页码> -r 100 -png /tmp/check/*.pdf /tmp/check/page

目检:换行是否挤行、是否超出卡片、页脚是否重叠。注意:本机缺微软雅黑时 LibreOffice 会替换成斜体衬线——这是预览假象,PowerPoint 里正常,不要据此改字体。

5. 批量追加多页(场景式,2026-09-04 公证PPT实战补充)

本 skill 同样适用于一次追加成组多页(如一个新场景 5–6 页),流程不变,另注意:

  • 插入位置:多页先 append 到末尾,再用 sldIdLst 统一移动到章节边界(如最后一个场景之后、PART 分隔页之前);移动后打印前后页标题验证(idx-1 / idx / idx+n 各查一次)
  • 素材来自 docx 时:unzip 取 word/media/* 得图片;用 python-docx 按段落 a:blip 顺序确定文图对应关系;PIL 读长宽比后等比居中放进预留区域,不裁剪不变形
  • 图片布局:竖图(手机截图,宽高比 ~0.5)按 H 定 W(如 H=3.2 → W≈1.6),在右侧区域水平居中;横图按 W=卡宽定 H 垂直居中。遵守「一页一图」铁律——多张截图宁可拆页
  • 文案长度预控:卡片要点文本宽 = 卡宽 − 0.56",12pt 中文约 22 字/行(按 3.74" 实测);写要点时先控制在 21 字内避免换行挤压。渲染后若发现换行,优先缩短文案,不要加大条目间距(间距是量自参照页的)
  • 多页编号:kicker 顺延现有小节号(如 2.17),标题用「(上)(中)(下)」分层;「场景 N」编号顺延最大场景号

6. 踩坑记录(2026-09-04)

  • 生成脚本重跑前必须 grep 验证:Edit 工具可能报成功但未落盘(同轮 3 处编辑实测仅 1 处生效)。改完脚本先 grep 关键新字符串确认,再跑脚本、再渲染
  • 渲染缓存:重新生成 pptx 后,先 rm 旧 PDF 和旧 PNG 再重新转换,否则目检看到的是旧图
  • LibreOffice 预览假象:中文回退衬线体、字宽与微软雅黑略有差异——只判断换行/出界/重叠,不据此改字体和字号

法律科技实务工具 · 维护者陆凌燕律师(北京德恒·无锡)· 关注公众号「鹿鸣于野 UMU」获取更多内容

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

中国大陆地区法院类案快速检索与《案件检索报告》(DOCX)生成技能。以案件五项要点(案由/法律关系、争议焦点、关键事实、我方诉请与诉讼地位、请求权基础法条)为检索锚点,经一次四问确认即开工(其中**检索地域范围**与**裁判时间范围**为强制选择题,默认范围为「2021年1月1日以后裁判的浙江省范围内的法院案例」,用户点选默认后须回显该范围提示);按**请求权基础、法律关系、案件事实三要素**判定高匹配——用户**指定**检索特定结果的案例时结果相似度计入评分(四要素满分 10 分),用户**未指定**时结果相似度不作为高匹配考虑因素(三要素满分 8 分);r1 判定须**核对法条版本与时间效力**,援引已失效旧法条者不得给满分;以语义向量检索为主召回、精确结构检索为条件兜底,本地脚本加权打分后按「得分率 > 法院层级 > 审判程序 > 裁判日期」排序,并检测**同院同日同标题的重复入库**案件、疑似重复者不占入报名额;截取匹配度最高的 5–10 例类案,逐案调详情核验案号并摘录判词原文,最后直接输出含页脚页码的 DOCX 报告(默认保存至桌面)。全流程人工确认 1 次、检索类调用控制在 2 次召回 + ≤10 次详情以内,报告阶段检索冻结。未指定结果时三要素高匹配而结果相反者亦会入报(逐例标注结果方向),指定结果时结果相反者一律剔除;报告内以两处固定声明披露「未设不利先例定向检索路径」的局限。当用户要求「快速检索类似案例」「找几个正向案例」「快速版案例检索报告」「检索 5 到 10 个类案并出报告」「出一份类案检索报告 docx」时使用。需要四象限归位、反向案例定向检索、补充召回多轮迭代或 14 分制硬软条件精判时,应使用完整版技能「案例检索报告Plus」而非本技能。基于华宇元典法律数据 MCP。

日本語の概要は準備中です。原文の説明を表示しています。

CSlawyer1985/legal-skillhub152026年9月23日 更新

88查企业风险查询与分析工具 —— 专注于中国大陆企业的法务风险查询与分析,覆盖经营异常、行政处罚、监管措施、被执行人、失信被执行人、司法案件等风险类型。支持公司名称、统一社会信用代码、companyId 三种输入方式,自动完成风险查询并输出结构化风险分析总结。 触发场景:仅当用户意图为查询企业风险/法务风险时触发。包括但不限于:企业风险查询、公司风险、经营异常、行政处罚、监管措施、被执行人、失信被执行人、司法风险、风险扫描、风险评估、企业合规审查、风险报告、XX公司有什么风险、XX公司安全吗、XX公司有没有处罚、XX公司被执行过吗。 不触发场景:纯粹的企业信息查询(如查公司、搜企业、工商信息、注册资本、法人代表、股东结构、专利商标等)不应触发本技能,请使用其他 cha88 系列工具。

日本語の概要は準備中です。原文の説明を表示しています。

CSlawyer1985/legal-skillhub152026年9月23日 更新

Manages Rule 30(b)(6) corporate representative deposition workflows — drafting notice topics with reasonable particularity, building examination outlines, defending designees, handling objections, and preserving binding admissions for summary judgment or trial. Use when drafting or responding to 30(b)(6) notices, selecting and preparing designees, building topic-by-topic outlines, or triaging scope and privilege disputes. Trigger keywords: 30(b)(6), corporate representative deposition, topic list, designee, notice analysis, deposition objections, corporate admissions.

日本語の概要は準備中です。原文の説明を表示しています。

CSlawyer1985/legal-skillhub152026年9月23日 更新

Guides taking and defending Rule 30(b)(6) corporate representative depositions. Drafts topic lists with reasonable particularity, builds examination outlines for binding corporate admissions, analyzes noticed topics for objections, and prepares designees. Use when drafting 30(b)(6) notices, preparing corporate deposition topics, selecting or preparing designees, or defending corporate representative depositions.

日本語の概要は準備中です。原文の説明を表示しています。

CSlawyer1985/legal-skillhub152026年9月23日 更新

Drafts FDA 510(k) Premarket Notification submissions demonstrating substantial equivalence under 21 CFR Part 807. Supports Traditional, Special, and Abbreviated pathways. Use when preparing Class II medical device regulatory filings, substantial equivalence analyses, or FDA premarket submissions.

日本語の概要は準備中です。原文の説明を表示しています。

CSlawyer1985/legal-skillhub152026年9月23日 更新

Drafts a recordable Abstract of Judgment to create a judgment lien on a debtor's real property. Extracts party names, monetary components, and judgment details from case documents, then applies jurisdiction-specific formatting and certification requirements. Use post-judgment in commercial litigation when enforcing monetary awards, perfecting judgment liens, or preparing lien filings with the county recorder.

日本語の概要は準備中です。原文の説明を表示しています。

CSlawyer1985/legal-skillhub152026年9月23日 更新

CSlawyer1985 のスキルをすべて見る

このスキルの問題を報告する