wx-markdown:一键生成公众号排版的命令行工具
作者:程序员罗尼 | 发布:2026-07-25 | 原文:https://mp.weixin.qq.com/s/ml8esQhxtkBbjO4kNkHkQQ

wx-markdown:一键生成公众号排版的命令行工具
为什么做这个工具
经常写公众号的人都知道,公众号编辑器对 Markdown 的支持几乎为零。每次写完文章,都要手动去调样式、改颜色、换字体,折腾半天最后排版还是差强人意。
更有意思的是——如果你搜"公众号排版工具",能找到一堆在线编辑器、浏览器插件、专业的排版网站。但它们大多要么收费,要么样式花里胡哨,要么导出的 HTML 在微信里水土不服。
我想要的是:
- 在本地编辑器写好 Markdown
- 一键生成公众号能粘贴的 HTML
- 风格克制、不抢内容
- 完全开源、零依赖(至少 Node.js 部分)
于是就有了 wx-markdown,一个极简的命令行公众号排版工具。
两大功能
功能一:Markdown → 公众号 HTML
在终端里跑一条命令,就能把 Markdown 文件渲染成公众号兼容的行内样式 HTML。
node cli.js render article.md --style qingri -o output.html
7 种彩虹主题,按星期几自动轮换,统一荧光笔高亮布局:
chiri(赤日·周一 🔴):红色系,热情醒目chengri(橙日·周二 🟠):橙色系,温暖活力huangri(黄日·周三 🟡):黄色系,经典明快lvri(绿日·周四 🟢):绿色系,清新自然qingri(青日·周五 🩵):青色系,冷静克制lanri(蓝日·周六 🔵):蓝色系,专业沉稳ziri(紫日·周日 🟣):紫色系,优雅收尾
为什么是这七种颜色?最近读毛主席诗词,有感于《菩萨蛮·大柏地》中的一句——"赤橙黄绿青蓝紫,谁持彩练当空舞?" 彩虹七色本是天地造物,用它来对应一周七天,每天一色,日日更新,恰如其分。哪天发文章,读者一看配色就知道今天是周几,也算一种小趣味。
每种风格都精心调校了背景色、正文字色、强调色、代码块样式、引用块样式、表格样式等细节。所有样式都内联到标签上,确保粘贴到公众号编辑器后不失真。
如何处理 Mermaid 图表
技术文章经常需要流程图。wx-markdown 会自动检测 Markdown 中的 mermaid 代码块,通过 mermaid.ink 在线服务将其转换为 PNG 图片并嵌入 HTML。
比如你在 Markdown 里写一段 mermaid,渲染后会直接变成下面这张高清流程图,公众号编辑器原生显示,完全不需要手动截图:

功能二:题图(封面图)生成
公众号文章的封面图是另一件麻烦事。微信要求的比例是 2.35:1 的扁长形状,你得打开设计软件、选背景、打字、调整、导出……太繁琐了。
wx-markdown 的解决方式是:
node cli.js cover "你的文章标题" --subtitle "一句话导读" -o cover.png
一键生成 900×500 的黑底亮黄字封面图。文字自动换行、字号自动适配、居中排版,干净利落。
如果你不喜欢黄色,随时可以换颜色:
node cli.js cover "标题" --text-color "#00FF00" --bg-color "#1a1a2e"
技术选型
工具的定位是轻量、零配置、跨平台。
Node.js 部分(渲染器):纯手写解析器,零依赖。没有引入 marked、remark 这些包,因为公众号 HTML 需要的不是完整的 Markdown 解析,而是一种"刚好够用"的转换——同时要保证输出的 HTML 只包含微信公众号支持的标签和样式。
Python 部分(题图生成):用 Pillow 库处理图片。选择 Python 而不是 Node.js 的图片库,是因为 Pillow 对中文字体的支持最可靠——它能直接调用系统的 STHeiti、PingFang、Microsoft YaHei 等字体,不会出现中文方框的问题。
使用流程
整个工作流只有三步:
第一步在本地编辑器(VS Code / Obsidian / Vim)写完 Markdown
第二步终端跑
node cli.js render article.md
第三步浏览器打开 HTML → 点"一键复制" → 粘贴到公众号
如果需要封面图,再多跑一条 node cli.js cover "标题"。
更简单的用法:一句话交给 Agent
如果你在用 AI 编程助手(比如 Pi),连命令都不用记。只需要一句:
"帮我把这篇 Markdown 渲染成公众号文章,带封面图"
Agent 会自动帮你:选今天的彩虹主题、生成题图、渲染 HTML、内嵌封面、加上一键复制按钮。你拿到的是一个打开就能用的完整 HTML。
每次日更,颜色自动跟着星期走,今天红明天橙,什么都不用管。
写在最后
这个工具的初衷是让写公众号这件事少一点摩擦。
排版不应该占据你创作时间的一半,封面图也不值得你打开 Photoshop。把精力留给内容本身,排版的事交给工具。
如果你也觉得有用,或者有想要的功能,欢迎在评论区留言告诉我。
END
END