使用 bm.md 服务进行 Markdown 排版、渲染和格式转换,支持微信公众号、知乎、掘金等多平台
使用 bm.md 完成以下任务:
result、图表错误和关键信息完整性。增强语法失败时先修正;仍失败则回退为结构清晰的正文、列表或表格,不交付损坏的图表。保持克制:不要用图表装饰简单内容,不要用 Mermaid 和 Infographic 重复表达同一信息,不要虚构事实或数值。生成丰富 Markdown 后,必须通过 bm.md 渲染并检查结果。
node --version,使用 bmmd 命令处理 Markdown。bmmd,直接使用;否则使用 npx -y bmmd 临时运行。https://bm.md/api/markdown/*。CLI 默认将结果输出到 stdout,可通过 --output <file> 写入文件。REST API 返回 JSON,结果在 result 字段中。
将 Markdown 源文本渲染为带内联样式的 HTML,可直接复制到富文本编辑器。
CLI 示例(优先):
npx -y bmmd render article.md --platform wechat --output article.html
支持 stdin:
cat article.md | npx -y bmmd render --platform wechat > article.html
端点: POST https://bm.md/api/markdown/render
请求参数:
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
markdown |
string | 是 | - | Markdown 源文本,支持 GFM 语法、数学公式 |
markdownStyle |
string | 否 | kami |
排版样式 ID,见下方完整列表 |
codeTheme |
string | 否 | kimbie-light |
代码块高亮主题 ID,见下方完整列表 |
mermaidTheme |
string | 否 | "" |
Mermaid 流程图主题 ID,空字符串表示使用默认主题 |
infographicTheme |
string | 否 | default |
Infographic 信息图主题 ID |
infographicPalette |
string | 否 | antv |
Infographic 信息图配色 ID |
customCss |
string | 否 | "" |
自定义 CSS,选择器需约束在 #bm-md 下,如 #bm-md h1 { color: red } |
enableFootnoteLinks |
boolean | 否 | true |
是否将链接转换为脚注形式 |
breaks |
boolean | 否 | false |
是否将段落内的软换行转换为 HTML 换行,不影响代码块 |
openLinksInNewWindow |
boolean | 否 | true |
是否在新窗口打开链接 |
platform |
string | 否 | html |
目标平台:html、wechat |
footnoteLabel |
string | 否 | Footnotes |
GFM 脚注区域标题 |
referenceTitle |
string | 否 | References |
外部链接参考区域标题 |
curl 示例:
curl -X POST https://bm.md/api/markdown/render \
-H "Content-Type: application/json" \
-d '{
"markdown": "# 标题\n\n这是一段**加粗**的文字。\n\n```javascript\nconsole.log(\"Hello, World!\");\n```",
"markdownStyle": "kami",
"codeTheme": "kimbie-light",
"platform": "wechat"
}' \
-o bm.md.json
响应示例:
{
"result": "<div id=\"bm-md\"><h1 style=\"...\">标题</h1>...</div>"
}
将 HTML 源代码转换为 Markdown 格式。
CLI 示例(优先):
npx -y bmmd parse page.html --output article.md
支持 stdin:
cat page.html | npx -y bmmd parse > article.md
端点: POST https://bm.md/api/markdown/parse
请求参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
html |
string | 是 | HTML 源代码,可以是完整文档或片段 |
curl 示例:
curl -X POST https://bm.md/api/markdown/parse \
-H "Content-Type: application/json" \
-d '{
"html": "<h1>标题</h1><p>这是一段<strong>加粗</strong>的文字。</p>"
}' \
-o bm.md.json
响应示例:
{
"result": "# 标题\n\n这是一段**加粗**的文字。"
}
从 Markdown 中提取纯文本内容,移除所有格式标记,保留段落分隔。
CLI 示例(优先):
npx -y bmmd extract article.md --output article.txt
端点: POST https://bm.md/api/markdown/extract
请求参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
markdown |
string | 是 | Markdown 源文本 |
curl 示例:
curl -X POST https://bm.md/api/markdown/extract \
-H "Content-Type: application/json" \
-d '{
"markdown": "# 标题\n\n这是一段**加粗**的文字,包含[链接](https://example.com)。"
}' \
-o bm.md.json
响应示例:
{
"result": "标题\n\n这是一段加粗的文字,包含链接。"
}
校验并自动修复 Markdown 格式问题,统一代码风格。
CLI 示例(优先):
# 输出修复后的 Markdown
npx -y bmmd lint article.md --output article.fixed.md
# 直接写回源文件
npx -y bmmd lint article.md --fix
端点: POST https://bm.md/api/markdown/lint
请求参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
markdown |
string | 是 | 待校验的 Markdown 源文本 |
curl 示例:
curl -X POST https://bm.md/api/markdown/lint \
-H "Content-Type: application/json" \
-d '{
"markdown": "#标题\n这是一段文字,没有正确的空格。\n-列表项1\n-列表项2"
}' \
-o bm.md.json
响应示例:
{
"result": "# 标题\n\n这是一段文字,没有正确的空格。\n\n- 列表项1\n- 列表项2"
}
| ID | 名称 | 风格描述 |
|---|---|---|
kami |
Kami | 简洁的纸张阅读风格(默认) |
bauhaus |
Bauhaus | 包豪斯风格,几何与功能主义 |
blueprint |
Blueprint | 蓝图风格,工程设计感 |
botanical |
Botanical | 植物园风格,自然柔和 |
newsprint |
Newsprint | 报纸印刷风格 |
retro |
Retro | 复古怀旧风格 |
sketch |
Sketch | 手绘素描风格 |
terminal |
Terminal | 终端/命令行风格 |
forest-review |
Forest Review | 森林季报风格,暖调编辑排版 |
navy-vellum |
Navy Vellum | 深蓝羊皮纸风格,静谧的学术手记 |
rose-nocturne |
Rose Nocturne | 玫瑰夜曲风格,暗色调时尚编辑 |
solar-catalog |
Solar Catalog | 日光图录风格,展览海报质感 |
triad-paper |
Triad Paper | 三调纸面风格,三色时尚杂志感 |
field-tablet |
Field Tablet | 田野铭牌风格,考古手册质感 |
public-square |
Public Square | 公共广场风格,行动主义海报 |
pixel-orbit |
Pixel Orbit | 像素轨道风格,复古像素街机 |
| ID | 名称 | 类型 |
|---|---|---|
catppuccin-latte |
Catppuccin Latte | 浅色 |
catppuccin-frappe |
Catppuccin Frappé | 深色 |
catppuccin-macchiato |
Catppuccin Macchiato | 深色 |
catppuccin-mocha |
Catppuccin Mocha | 深色 |
kimbie-light |
Kimbie Light | 浅色 |
kimbie-dark |
Kimbie Dark | 深色 |
panda-syntax-light |
Panda Syntax Light | 浅色 |
panda-syntax-dark |
Panda Syntax Dark | 深色 |
paraiso-light |
Paraiso Light | 浅色 |
paraiso-dark |
Paraiso Dark | 深色 |
rose-pine-dawn |
Rosé Pine Dawn | 浅色 |
rose-pine |
Rosé Pine | 深色 |
tokyo-night-light |
Tokyo Night Light | 浅色 |
tokyo-night-dark |
Tokyo Night Dark | 深色 |
| ID | 说明 |
|---|---|
html |
通用网页,标准 HTML 输出 |
wechat |
微信公众号,针对微信编辑器优化 |
$...$(行内)和 $$...$$(块级)语法