PPT Ultra-wide Relayout
v1.0.0把普通比例的 PPT 重新排版成更宽的超宽横版,或参考另一份 PPT 的页面比例与视觉语言进行重排。只要用户提到“改成更宽屏”“参考另一份 PPT 的比例”“不要拉伸文字”“只改字号和版式适配”“按参考稿的宽屏风格重排”,就应该主动使用这个 skill。尤其适用于需要保留原始文案、字体风格、颜色系统与层级关系,但...
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
The name/description (PPT ultra‑wide relayout) match the included scripts and SKILL.md. The two Python scripts inspect PPTX zip/XML and adjust element coordinates/fonts to produce a new .pptx; that is exactly what the skill claims to do.
Instruction Scope
SKILL.md directs the agent to run the provided scripts on local .pptx files and describes only local file analysis and modification. The instructions do not ask for unrelated files, secrets, system configuration, or external endpoints. The scripts read ZIP entries and XML nodes and write a new .pptx—this is within scope for a relayout tool.
Install Mechanism
There is no install spec (instruction-only + bundled scripts). The scripts require Python 3 and the lxml library, but the skill metadata does not declare these dependencies or an install step. This is not malicious but is an operational omission: users/agents must ensure Python3 and lxml are available before running the scripts.
Credentials
The skill requests no environment variables, credentials, or config paths. All behavior is local to files the user supplies. No secrets or unrelated service tokens are requested.
Persistence & Privilege
The skill is not marked always:true, does not modify other skills or system settings, and does not claim to persist credentials or enable itself. It only reads and writes files the user provides.
Assessment
This skill appears coherent and limited to local PPTX manipulation, but follow these precautions before using it:
- Run it on a copy of your presentation (do not run it on originals).
- Ensure you have Python 3 and the lxml package installed (the scripts import lxml but the skill metadata does not declare dependencies).
- Inspect the scripts yourself or run them in a sandboxed environment if you don't trust the source (they perform local file I/O and modify PPTX XML; no network activity is present in the visible code).
- Note: the README contains a personal WeChat contact (external) — the skill itself does not phone home, but be cautious about following external links or contacting unknown authors.
- If you want complete assurance, provide or review the full (non-truncated) version of scripts/pptx_ultrawide_relayout.py; the provided file was truncated in the listing and the final packaging step should be confirmed to ensure no unexpected behavior when writing the output PPTX.Like a lobster shell, security has layers — review code before you run it.
designlatestlayoutpowerpointppt
PPT Ultra-wide Relayout
这个 skill 用来处理“PPT 比例改造 + 文字重排”。
它适合这类任务:
- 用户给了一份源 PPT,要改成更宽的横版比例
- 用户给了一份参考 PPT,希望页面比例和整体构图向参考稿靠拢
- 用户明确要求“不要拉伸文字,只能通过字号、框体、留白、位置来适配”
- 用户希望保留原稿的主题色、字体、层级、内容顺序,只重新组织版面
默认策略
默认优先使用“保留源稿高度 + 套用参考稿宽高比”的方式,而不是直接把页面压成参考稿的绝对尺寸。
这样更稳的原因是:
- 不容易把纵向空间压扁
- 更符合“不要拉伸文字”的要求
- 文字和卡片可以通过字号、文本框宽度和留白来适配
硬性约束
- 不要拉伸文字,不要通过非等比缩放让字形变扁或变长
- 不要直接把整页元素做机械等比缩放后交差
- 优先保留原稿的字体、字重、字号层级、颜色和阅读顺序
- 优先保留原稿每一页的元素顺序和块状关系,不要把本来成组的元素拆散
- 可以放大或缩小文本框,可以减小字号,可以改变换行位置
- 可以延展背景图、裁切背景图、重设图像位置,但要避免把人物或主体裁没
- 先做可编辑的 PPTX 输出,不要把内容转成纯图片页
推荐工作流
1. 先分析结构
python3 scripts/pptx_layout_dump.py /path/to/source.pptx --pretty
python3 scripts/pptx_layout_dump.py /path/to/reference.pptx --pretty
重点看:
- 画布尺寸和宽高比
- 每页主要文本框数量
- 标题字号、正文字号、字体
- 是否存在全屏背景图、右侧主视觉图、底部页脚信息
2. 决定目标画布
默认公式:
target_width = source_height * (reference_width / reference_height)
target_height = source_height
如果用户明确要求精确尺寸,才直接使用参考稿的 width x height。
3. 先映射版心,再微调
超宽重排时,默认先建立一个“居中的内容安全区”,把原始版心整体映射进去,再做小幅微调。
优先遵守这些规则:
- 不要把每个元素各自拉开
- 先保住原页的阅读顺序、成组关系和视觉节奏
- 新增空间优先用作留白、背景延展和辅助氛围
- 如果页面原本就偏左或偏右构图,可以保留这种倾向,但整体重心要稳定
- 如果某个文本框原本在一个卡片、描边块或色块里,重排后必须继续待在那个块里
4. 再按页面类型处理
优先把每页归为以下类型之一:
- 封面页
- 章节页
- 内容页
- 双列或多卡片页
- 步骤/方法论页
- 收尾页
页面信息很多时,不要为了“看起来像超宽”而把内容排得过散。优先保证层级、可读性和块内安全。
脚本用法
结构分析
python3 scripts/pptx_layout_dump.py /path/to/file.pptx --pretty
首轮超宽重排
python3 scripts/pptx_ultrawide_relayout.py \
/path/to/source.pptx \
--reference /path/to/reference.pptx \
--output /path/to/output.pptx
默认行为:
- 保留源稿高度
- 按参考稿宽高比扩展画布
- 保持文字不被拉伸
- 先把原始版心整体映射到居中的安全区
- 再对背景、正文框、标题框和装饰元素做温和微调
- 尽量避免块内溢出、顺序错乱和过度横向发散
如果用户明确要求精确尺寸:
python3 scripts/pptx_ultrawide_relayout.py \
/path/to/source.pptx \
--reference /path/to/reference.pptx \
--target-mode exact-reference \
--output /path/to/output.pptx
XML 改稿原则
PPTX 本质是 zip 包。常见关键文件:
ppt/presentation.xmlppt/slides/slideN.xmlppt/theme/theme1.xml
重点关注这些节点:
p:sldSz:画布宽高a:xfrm:元素位置和尺寸a:off:左上角坐标a:ext:宽高a:rPr:文本字号、字重、颜色、字体
文字适配时优先这样做:
- 先改文本框尺寸和位置
- 再看是否需要减小字号
- 最后再处理换行和行距
不要这样做:
- 直接对文字所在形状做横向或纵向非等比拉伸
- 不检查块边界和换行就统一缩小所有字号
验收清单
- 每一页都已经换成目标比例
- 没有任何文字被拉伸变形
- 字号层级仍然清晰
- 标题和正文没有明显溢出
- 文本框没有冲出所属卡片、描边块或底色块
- 背景图没有露白边
- 页脚、页码、辅助装饰没有被甩到错误位置
- 阅读顺序与原稿一致,没有出现“元素虽然都在,但视觉关系散掉了”的问题
- 版式整体看起来像“重新设计过”,不是“被拖宽了”
Comments
Loading comments...
