打工人梗图批量生成 SOP
2026-08-13 沉淀。复刻小红书「工资3000 / 工资30000」系列吉卜力风打工人梗图。 新开会话把这份文件拖进去,就能不重踩坑地复现整套流程。
#一、成品与工具在哪
| 东西 | 位置 |
|---|---|
| 工具代码 | ~/personal/meme-comic/(gen.py + overlay.py + config.json + README.md) |
| 出图目录 | ~/Desktop/AI生图/打工人梗图/(6 张单图 + 3 张拼接长图) |
| 阶跃 key | ~/Desktop/配置信息/阶跃星辰API-key.md |
一条命令跑全套(6 张约 13 秒):
cd ~/personal/meme-comic
export STEPFUN_API_KEY="<见上面那份配置>"
python3 gen.py config.json单张重出:python3 gen.py config.json --only 5(3 秒)
#二、整条链路
config.json(标题 + 场景 + 画面内文字)
↓ 阶跃 step-image-edit-2 文生图,并发 3
panel_1~6.png(1024×1024,模型渲染大标题和标语)
↓ overlay.py 用真字体叠小字(模型写不准的书脊、标签)
↓ Pillow 两两上下拼接
merged_1~3.png(直接发小红书)#三、必须知道的坑
#1. 阶跃按量付费端点已欠费
https://api.stepfun.com/v1 调图片生成返回 402 quota_exceeded。
脚本默认走 Step Plan 订阅端点 https://api.stepfun.com/step_plan/v1/images/generations,
用同一把标准 key 就能打通,模型 step-image-edit-2,3 秒/张。
要切回按量付费改环境变量 STEPFUN_BASE_URL。
订阅还剩多少 Credit 查不到——/step_plan/v1 下的 credits/balance/usage/me/subscription
全 404,按量端点的 /v1/user/balance 也 404,响应头里没有任何额度字段,官方文档没提供查询 API。
只能登 https://platform.stepfun.com/ 控制台看。
(档位:Flash Mini 400M/¥49、Flash Plus 1600M/¥99、Flash Pro 8000M/¥199、Flash Max 40000M/¥699;1M Credit = ¥1,月末清零)
#2. 中文渲染三条铁律
- 长句竖排必糊。「质量第一 安全第一 工期必保 使命必达」16 字会挤成一团重叠墨块。 拆成两条各四字贴在不同位置,一次就对。
- 书脊、小标签这类极小字必编造。别指望模型,交给
overlay.py叠。 - 不写「没有粗黑描边」就出扁平卡通。要厚涂手绘质感,提示词里必须同时给 「吉卜力风格厚涂手绘 + 柔和水彩笔触 + 没有粗黑描边」。
另外标题里的谐音字会被悄悄改(「干一天算一天」→「算每一天」),出图后逐字校对标题,
错了 --only N 重出一次,3 秒的事。
#3. 小字叠加层的两个实测参数
- 字体默认用霞鹜文楷(
~/Library/Fonts/LXGWWenKai-Regular.ttf,已装)。 手写楷体跟手绘插画最搭。其他别名:qihei(汉仪旗黑,最清晰)、songti、heiti。 - 描边默认 0.03(字号的 3%)。小字叠在书脊、卷轴这类有纹理的底上会糊进背景, 描一圈浅色边能把字拔出来。实测 0.10 太重,笔画会粘连糊成一坨,0.03 刚好。
#4. 叠字坐标跟具体构图绑死
同一条提示词每次出图,书架位置都会挪,写死的坐标就废了。正确流程:
- 先
--overlay off把底图出到满意 - 照着定稿图量坐标写进
config.json的overlay字段 - 之后别再重新生成底图
#四、Figma MCP:✅ 已实测跑通(2026-08-13)
结论:整条链路能通,成品 PNG 能导回本地。但日常出图仍建议用 Pillow,Figma 留给要精修的场合。
#跑通的完整链路
whoami → 拿 planKey(team::xxx)
create_new_file → 建文件,拿 fileKey
upload_assets → 拿单次上传 URL,curl POST 图片字节
use_figma → Plugin API 建文本图层
download_assets → 拿到短期 URL,curl 下载成品 PNG ✅实测产物:~/Desktop/AI生图/打工人梗图/panel_6_figma版.png
对比图:~/Desktop/梗图小字-Pillow对比Figma.png(两版效果几乎一致)
#踩过的坑
MCP 装法有两种,只有 plugin scope 那种在 CLI 里能用。
claude.ai configscope 的连接器(早期那个claude.ai Figma)只服务网页端和桌面 App, CLI 里ToolSearch永远搜不到工具——Gmail 同 scope 同样搜不到,这是决定性证据。 清~/.claude/mcp-needs-auth-cache.json、重启都没用。 必须装 plugin 版,在/mcp面板里选中plugin:figma:figma→ Authenticate, 授权后还要重开一次会话工具才加载。上传的图会被塞进 400×300 的默认 frame,1024×1024 的方图直接变形。 上传后第一件事就是
frame.resize(1024, 1024)。调
use_figma前必须先读skill://figma/figma-use/SKILL.md(用ReadMcpResourceTool), 否则容易踩一堆难查的坑。几条硬规则:颜色用 0–1 不是 0–255;改文字前必须await figma.loadFontAsync();用return输出,console.log拿不到;脚本失败是原子的,不会改文件。Figma 云端字体库里有
LXGW WenKai TC(繁体版文楷,简体字正常显示), 还有 Noto Sans SC / Noto Serif SC / ZCOOL 系列。用listAvailableFontsAsync()查确切 style 名。Figma 没有原生中文竖排,靠逐字换行实现:
text.split("").join("\n")+textAlignHorizontal='CENTER'。描边等价物:
strokes+strokeWeight: 1+strokeAlign: 'OUTSIDE',效果同 Pillow 的 stroke 0.03。
#什么时候用哪个
| Pillow | Figma MCP | |
|---|---|---|
| 速度 | 3 毫秒,零网络 | 4 次云端往返 |
| 批量 | 6 张一条命令 | 每张都要建文件上传 |
| 精修 | 改配置重跑 | 能在 Figma 里手动拖,所见即所得 |
| 字体 | 本机字体 | Figma 云端字体库 |
日常批量出图用 Pillow。 要做精细排版、或想手动微调位置,走 Figma。
(overlay.py 里的 render_via_figma() 仍是占位实现,只导出 <图名>.overlay.json 坐标规格。
真要接成自动的,照上面那条链路把五步串起来即可。)
#五、换题材怎么做
改 config.json:
{
"title": "顶部粗黑体大标题",
"scene": "构图和道具,不含文字",
"texts": [
{ "where": "左墙白纸标语上", "text": "质量第一" }
],
"overlay": [
{ "text": "摸鱼心经", "x": 0.845, "y": 0.352, "size": 0.03, "vertical": true }
]
}texts交给模型渲染(大标题、标语牌这类中等尺寸文字,准确率高)overlay交给 Pillow 叠(极小字),x/y是中心点相对坐标(0~1)
换整套画风和主角:改 gen.py 顶部的 STYLE_PREFIX 和 CHARACTER 两段常量。
来源:沉淀/打工人梗图生成-SOP.md(整理于 2026-08-18)