Back to skills
SKILL.md
screenshot-infographic-skill
ASecurity把「一张截图 + 一段功能描述」或「一段主题文案」自动变成一整套可在小红书/公众号/社群直接发的 风格统一、视觉优美的图。两种模式:①截图模式——生成功能教程图/产品导览图(1张概览+单功能细节, 局部放大,品牌色自动跟随截图);②纯文案模式——表意型排版信息图,纯排版零插画、离线可跑, 视觉元素直接编码内容。晚秋简约风:主色 #1A3A6B 深蓝 + 哑光金 #B08D45 + 暖白 #FBFAF8。 适合产品教程、功能安利、新手引导、知识科普、活动预告、资讯解读。 触发词:截图生成教程、功能讲解图、产品导览图、截图配图、功能安利图、把截图做成教程、 文案生成信息图、小红书配图、名词科普配图、infographic generator、screenshot tutorial、 feature guide image、text to infographic。
- 5 stars
- 0 votes
- 0 copies
- 1 view
- Added August 30, 2026
Works with
Security analysis
100/100Pro scans all 7 files and shows the line behind each finding
npx -y skills add Wanqiu12345/screenshot-infographic-skill --agent claude-codeAre you the author of screenshot-infographic-skill?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/wanqiu12345-screenshot-infographic-skill)---
name: screenshot-infographic-skill
description: >
把「一张截图 + 一段功能描述」或「一段主题文案」自动变成一整套可在小红书/公众号/社群直接发的
风格统一、视觉优美的图。两种模式:①截图模式——生成功能教程图/产品导览图(1张概览+单功能细节,
局部放大,品牌色自动跟随截图);②纯文案模式——表意型排版信息图,纯排版零插画、离线可跑,
视觉元素直接编码内容。晚秋简约风:主色 #1A3A6B 深蓝 + 哑光金 #B08D45 + 暖白 #FBFAF8。
适合产品教程、功能安利、新手引导、知识科普、活动预告、资讯解读。
触发词:截图生成教程、功能讲解图、产品导览图、截图配图、功能安利图、把截图做成教程、
文案生成信息图、小红书配图、名词科普配图、infographic generator、screenshot tutorial、
feature guide image、text to infographic。
agent_created: true
version: 2.0.0
---
# 截图教程图生成器 (Screenshot Tutorial Generator)
把「一张截图 + 一段功能描述」或「一段结构化文案」变成「一整套风格统一、可直接发布的配图」。
用户不需要懂设计,只要发来素材和大致说明,就能拿到成套的 1080×1440(3:4 竖版)高清 PNG。
> v2.0.0 起移除旧版 v1 流程(杂志风模板 + Agnes 3D 插画 + OCR 定位)与 `--style` 参数,
> 全部走「晚秋简约风」渲染器。旧 v1 配置(`visual_prompt` 格式)不再兼容。
## 两种模式
### 截图模式(`run_screenshot_tutorial.py`)
输入一张产品截图 + 产品信息,输出功能导览图:
- `00_cover.png` 极简传播封面(栏目名 + 品牌名 + slogan)
- `01_overview.png` 总体概览(截图嵌顶部窗口,下方表格化拆解功能)
- `02~N_<功能>.png` 功能细节页(局部放大 + 步骤 + 价值/场景)
品牌色从截图主色自动推导(降饱和、压暗),金色 `#B08D45` 只做小面积强调;深浅主题随截图自动判定。
配置由脚本从 ITEMS/DETAILS 常量自动组装,品牌信息用环境变量覆盖:
`BRAND_NAME` / `BRAND_URL` / `BRAND_SUBTITLE` / `BRAND_CATEGORY` / `SCREENSHOT`。
渲染器 `scripts/screenshot_v2.py`。
### 纯文案模式(`run_text_tutorial.py <config.json>`)
输入表意型排版配置 JSON,输出成套信息图。**纯排版零插画、离线可跑**,视觉元素直接编码内容:
竖链=因果推进、点阵=群体、纵向时间线=演进、三列对比表=差异、SVG 示意图封面。
渲染器 `scripts/text_v2.py`;示例配置 `examples/wf_agent_v2.json`。
每页通过 `flex:1` 均分撑满 1080×1440,不允许底部大片真空;主色 `primary`(默认 `#1A3A6B` 深蓝)
+ 金色 `#B08D45` 小面积强调,背景暖白 `#FBFAF8`。
#### 页面类型(type 字段)
除 `cover` 外,每个内容页都支持通用字段:`meta`(页眉栏目)/ `pg`(页码)/ `title` / `lead`(导语)/ `endbar`(底部结论条)。
| type | 用途 | 关键字段 |
|---|---|---|
| `cover` | 封面(SVG 示意图 + 大标题) | `title_lines` / `subtitle` / `net` / `title_size` / `sum` / `note` / `date` / `total` |
| `stats` | 大数字页 | `items: [[大数字, 单位, 标签, 注释], ...]`(四元组) |
| `chain` | 竖向因果链 | `steps: [[标题, 说明, 补充], ...]`(数组,非字典) |
| `timeline` | 纵向时间线 | `nodes: [{dt, tt, ds, key}]`(注意是 `nodes` 不是 `events`;`key: true` 高亮节点) |
| `compare` | 双栏清单对比 | `left_label` / `left_items` / `right_label` / `right_items`(items 为字符串或 `{m, s}`) |
| `vs` | 左右双方逐行对比表 | `rows: [{dim, wf, wf_s, ag, ag_s}]`,可加 `left_label` / `right_label`(默认 WORKFLOW/AGENT) |
| `takeaway` | 收尾判断页 | `highlight`(金句)/ `paras`(段落列表)/ `limit: [小标题, 一段话]` |
| `flow` | 窗口流程对比(见下) | 见下 |
**cover 补充**:`net` 控制封面 SVG 示意图——`"flow"`(固定路径 vs 自主循环)、`"branch"`(一个输入分叉成两种输出)、`false`(不画);`title_size` 可在标题较长时降字号(默认 94px,长标题建议 72px 且每行 ≤11 字);`sum` 为封面要点卡(`[{h, t, d}, ...]`)。
#### `flow` 页(终端窗口 + 连接线 + 概率条 + 选项块)
四种组件:终端窗口框(圆点 + 等宽字标签 + 右上角 tag)、金色直角分叉连接线、
概率条(最高项自动深蓝强调)、选项块(支持 `{text, note}` 带注释)。三种拼法:
1. **冲突对比页**:`input` 窗口分叉到左右两个子窗口(`children[].kind: text|bars`),
适合「同一个输入、两种输出」(如 LLM 生成文本 vs JEV 返回概率条);
2. **举例页**:`input` 窗口 + `mid` 中段文字 + `chips` 选项块(候选集摆上台面,`chips` 可带注释行);
3. **机制分析页**:无 `input`,左右窗口直接对比 + 底部结论行。
底部通用字段:`after`(结论行)/ `after_gray`(灰字补充)/ `note`(脚注,如「概念演示,非实际模型输出」)。
#### 配置骨架
```json
{
"slug": "pXX_topic",
"pages": [
{"type": "cover", "name": "封面", "title_lines": ["..."], "subtitle": "..."},
{"type": "flow", "name": "两种输出", "meta": "工作原理", "pg": "02 / 07",
"title": "...", "lead": "...", "input": {...}, "children": [...], "after": [...]}
]
}
```
`name` 字段即输出文件名(`00_<name>.png` 起);`meta`/`pg` 是页眉栏目与页码;
`footer_brand` 可自定义页脚(默认「晚秋AI日记」)。
---
## 执行流程(务必按顺序)
### 步骤 0 · 接收输入
用户给:① 一张截图路径 + 功能描述(截图模式);或 ② 一段主题/文案(文案模式)。
缺什么先索要什么。文案模式需要先把内容结构化成配置 JSON(拆页 + 选页型 + 填字段)。
### 步骤 1 · 确认门(做图前必须过)⚠️
**在生成任何图片之前,必须先把出图方案回述给用户确认。** 除非用户明确说"直接生成"、"你直接做"、"不用确认"。
回述包含:拆几页、每页用什么页型、标题文案方向、页脚品牌名。
**⚠️ 文案必须原创**:参考别人的图只能借鉴**版式与叙事结构**(如「冲突先行→例子落地→机制分析」),
例子、文案、数字必须全部原创——直接照抄人家的例子等于洗稿,绝对禁止。
### 步骤 2 · 渲染
```
# 文案模式
python run_text_tutorial.py <config.json> --out <输出目录>
# 截图模式(环境变量覆盖品牌信息后)
python run_screenshot_tutorial.py
```
渲染用无头浏览器(`render.py` 查找 Edge/Chrome/Chromium),强制传最小环境变量(SAFE_ENV)——
宿主注入的 `NODE_OPTIONS` 等会让 Edge 秒退。
### 步骤 3 · 目检
每张 PNG 生成后**必须读图目检**(Read 工具),确认无文字重叠、无大片真空、无占位符。
有问题改配置/引擎重跑,不要带病交付。
### 步骤 4 · 展示
WorkBuddy 用 `present_files` 一次性展示全套图。
---
## 关键规则
### 文案质量准则(内容层,两种模式通用)
排版再好看,文案不行也白搭。所有页面文字必须同时满足「说人话」和「专业」。
1. **说人话 ≠ 网络腔**。要口语化、易懂,但**禁用**下列几类词:
- 网络流行语/烂梗:`说白了`、`上头`、`能打`、`拿捏`、`绝绝子`、`yyds`、`格局`、`栓Q`、`家人们`、`划重点`、`敲黑板`。
- 夸大营销词:`神器`、`封神`、`逆天`、`王炸`、`天花板`、`吊打`、`秒杀`、`遥遥领先`、`无敌`(正文里的 `爆款` 也尽量避免,仅栏目名可保留)。
- 夸张情绪词:`疯狂`、`恐怖`、`炸裂`、`震惊`、`离谱`、`绝了`。
- 对产品/工具的贬义拟人:`偷懒`、`找借口`、`耍滑头` → 换成中性的「跳过步骤 / 走捷径 / 省事做法」。
2. **标题传递信息,不贩卖情绪**。标题要让人知道这页讲什么,而不是煽动感受。
3. **每页只讲一个核心点**。标题点题 → 引语展开 → 结论收束,三者角度不同、不重复措辞。
4. **数字客观、可溯源、不注水**。用真实数据,拿不准的宁可不写。
5. **落到读者利益(so what)**。每个卖点都要回答「这对你意味着什么」。
6. **术语即用即解**。出现专有名词时随手用一句白话解释,默认读者是小白。
7. **口吻统一**:全套统一第二人称、平和专业;比喻可用但克制(最多一个且贴切)。
> 自检口诀:写完通读一遍,凡是「换成一个认真的人当面讲不会说出口」的词,一律删掉重写。
### 版面铁律
- 每页 `flex:1` 撑满 1080×1440,**不允许大片真空**;内容不足时优先加叙事性文字块(如 flow 的 `mid`),不要拉大间距。
- 窗口/卡片高度**内容自适应 + 最小高度**,不要 `flex:1` 无限撑高(内容会飘空)。
- 版面密度不够时优先补内容,而不是放大留白。
- 统一:同背景、同卡片样式、同字体、同页脚、同页码体系。
### 品牌页脚智能判断
- 用户给了品牌名/网址 → 页脚放名字(+网址);什么都没给 → 用默认品牌或保持简洁。
### ⚠️ 生成任务进行中严禁主动结束对话
只要还有渲染等耗时任务没出结果,**绝对不能**主动结束这一轮对话。
必须用持续阻塞(`TaskOutput block=true`)把对话保持在等待状态,直到成图并汇报之后才算结束。
这条优先级高于任何省事考量。
---
## 跨平台支持(已验证)
本技能遵循 **Agent Skills 开放标准(agentskills.io)**:
- **Claude Code**:`~/.claude/skills/<name>/SKILL.md`
- **OpenAI Codex**:`~/.agents/skills/<name>/SKILL.md`
- **WorkBuddy**:`~/.workbuddy/skills/<name>/SKILL.md`
**运行前置**:必须装有 **Edge / Chrome / Chromium** 之一(无头渲染依赖);
`render.py` 已内置 `--no-sandbox` 与 `--disable-dev-shm-usage`。
## 依赖
- **Python 3.10+**
- **Pillow**(截图模式裁剪用)
- **系统浏览器**(必需,渲染):`render.py` 自动查找。
运行仓库根目录 `install.py` 可一键创建隔离 venv 并安装依赖。
## 错误处理与兜底
- 渲染出的 PNG 有空白或错位:优先检查配置 JSON 的字段名(如 timeline 用 `nodes` 不是 `events`)。
- Edge 秒退 / 渲染超时:确认 SAFE_ENV 最小环境变量逻辑没被绕过(不要直接 `subprocess` 裸调浏览器)。
- 文件名带特殊字符:`name` 字段避免 `/ \ : * ? " < > |`。
Files in this skill
- CHANGELOG.md
- CONTRIBUTING.md
- README_EN.md
- SKILL.md
- assets/cover_source.html
- examples/favicon.png
- examples/jinan_drg.json
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.