自动化
在 n8n 里把 Markdown 生成图片
在任意工作流里加一个 HTTP Request 节点,就能把 Markdown 转成 PNG、JPG 或 PDF。不用安装自定义节点,也不要求自建部署。
用途
大家用它来做什么
01
定时把 RSS 条目或数据库记录渲染成社交卡片,再在同一个工作流里发到 Slack、X 或 LinkedIn。
02
在结果离开工作流之前,把 AI 节点的输出渲染成图片——进去的是 Markdown,出来的是可直接分享的 PNG。
03
表单提交或记录变更时,把渲染好的 PDF 作为附件发出邮件。
接入
接入 n8n
- 01
在「个人中心 → API tokens」创建令牌。它以 mti_ 开头,且只显示一次,关闭弹窗前请先复制。
- 02
在工作流中添加 HTTP Request 节点,方法设为 POST,URL 填 https://markdowntoimage.com/api/v1/images/generate。
- 03
在 Headers 中加入认证头。也可以用 n8n 的 Header Auth 凭据,两种方式的头名称和取值是一样的。
Authorization: Bearer mti_your_token_here
- 04
把 Body Content Type 设为 JSON,粘贴以下内容。={{ }} 表达式会从上一个节点取出 Markdown。
{ "markdown": "={{ $json.content }}", "format": "png", "width": 800, "theme": "sunset", "mode": "url" } - 05
图片链接位于响应的这个路径。把它接给下游的上传、邮件或存储节点即可。
{{ $json.data.imageUrl }}
主题、字体、代码样式、PDF 页面尺寸等全部参数,都列在 API 文档.
常见问题
技术支持Q1
需要安装自定义 n8n 节点吗?
不需要。n8n 自带的 HTTP Request 节点就够了,本质上就是一次 REST 调用。也正因如此,它在 n8n Cloud 和自建部署上都能用,不涉及社区节点审核。
Q2
怎么把上一个节点的 Markdown 传进来?
在 JSON body 里用 n8n 表达式,例如 ={{ $json.content }},其中 content 是存放 Markdown 的字段。n8n 支持的任何表达式都可以用,包括拼接多个字段。
Q3
能直接拿到图片本身而不是 URL 吗?
可以。在请求体里把 mode 设为 binary,接口会直接返回图片二进制数据,而不是带 URL 的 JSON。下一步需要文件而不是链接时用这个。
Q4
用满月度额度会怎样?
接口会返回错误响应,而不是悄悄生成一张坏图,你可以在工作流里对它做分支处理。任何时候都能用 GET /api/v1/account/usage 查询剩余额度。