返回 Skill 列表
extension
分类: 其它无需 API Key

飞书文档转小红书简报图片工具

飞书文档转小红书简报图片工具。读取飞书云文档中的双语内容,自动生成小红书风格的竖版卡片图片,支持纵向拼接为长图。适用财经日报、双语快讯、市场速递等内容排版。触发词:小红书图片、生成XHS图片、飞书转图片、日报转图片、长图拼接、简报图片。

person作者: user_e8dcb574hubcommunity

飞书文档转小红书简报图片工具

将飞书云文档中的双语结构化内容,一键生成小红书竖版卡片图片 + 长图。

输入数据格式

工作流依赖一个 JSON 数据文件,结构如下:

{
  "prefix": "WB日报_2026-05-27",
  "header_label": "WB DAILY",
  "title": "市场速递",
  "subtitle": "Walter Bloomberg 日报",
  "date": "2026-05-27",
  "date_display": "2026年5月27日 · 北京时间",
  "source": "@DeItaone · x.com",
  "footer": "Walter Bloomberg 日报 2026-05-27",
  "tag": "WALTER BLOOMBERG DAILY",
  "style": "bw",
  "meta": [
    ["来源", "@DeItaone on X (Twitter)"],
    ["时间范围", "2026-05-27 00:08 ~ 21:10"],
    ["快讯数量", "共 31 条·全部双语对照"],
    ["覆盖主题", "能源 · 宏观 · 科技 · 地缘政治"]
  ],
  "items": [
    {"index": 1, "time": "21:10", "en": "ENGLISH TEXT...", "cn": "中文翻译..."},
    {"index": 2, "time": "21:08", "en": "...", "cn": "..."}
  ]
}

执行流程

Phase 1:获取数据

若 JSON 数据文件已存在,跳过此阶段。若需从飞书文档读取:

LARK_CLI="$HOME/.workbuddy/binaries/node/versions/22.12.0/bin/lark-cli"

# 从 URL 提取 document-id(URL path 最后一段)
"$LARK_CLI" docs +fetch \
  --doc "https://my.feishu.cn/docx/DOC-ID" \
  --as user --api-version v2

从返回的 HTML/Markdown 内容中解析双语条目,构造符合上述 JSON 格式的数据文件。

解析规则:

  • 英文原文与中文翻译成对出现
  • 时间通常以 HH:MM 格式出现在行首或编号旁
  • 按解析顺序编号(index 从 1 开始)

Phase 2:生成图片

# macOS 上用系统 Python(WorkBuddy 内置 Python 有 Pillow 签名问题)
/opt/miniconda3/bin/python \
  SKILL-DIR/scripts/gen_xhs_images.py \
  --data input.json \
  --output OUTPUT-DIR/ \
  --items-per-page 15

参数说明: | 参数 | 必填 | 说明 | |------|------|------| | --data | 是 | JSON 数据文件路径 | | --output | 是 | 输出图片目录 | | --config | 否 | JSON 样式配置(见下方) | | --items-per-page | 否 | 每页条目数(默认 15) |

样式方案(通过 style 字段指定): | 值 | 描述 | |----|------| | bw | 极简黑白灰(默认):白底、黑字、浅灰辅助 | | dark | 深色夜读:深蓝黑渐变 + 金色强调 | | gold | 轻奢金:白底 + 暗金点缀 |

样式配置 JSON(可选 --config):

{
  "style": "bw",
  "width": 1080,
  "height": 1440,
  "margin": 40,
  "items_per_page": 15
}

Phase 3:拼接长图

/opt/miniconda3/bin/python \
  SKILL-DIR/scripts/merge_long.py \
  --input OUTPUT-DIR/ \
  --output OUTPUT-DIR/长图.png \
  --bg-color FFFFFF

Phase 4:推送到微信

使用 deliver_attachments 工具将长图推送:

deliver_attachments(attachments=["OUTPUT-DIR/长图.png"])

已知限制与踩坑

  • Pillow 签名:WorkBuddy 内置 Python 环境 Pillow 有签名校验问题,必须用 /opt/miniconda3/bin/python 执行
  • 字体:脚本自动探测 /System/Library/Fonts/PingFang.ttc 等系统字体,macOS 默认可用
  • 长图尺寸:小红书建议 1080px 宽,高度不限(脚本用纵向拼接)
  • 图片总数:封面 + ceil(总条目 / items_per_page) 页内容
  • Playwright 截图方案:之前尝试过但 Chromium 下载超时 + Chrome headless 沙盒限制,已废弃

适用场景

  • 财经类日报(如 Walter Bloomberg 快讯)
  • 双语新闻速递
  • 任何"中英对照 + 时间轴"形式的内容排版
  • 需要在小红书发布长文内容的场景