🎉 Python 开发者和 Mermaid 爱好者的重大消息:'mmdc' 让 Mermaid 图表像 Python 一样简单! 🚀

发布: (2026年1月8日 GMT+8 17:02)
4 min read
原文: Dev.to

Source: Dev.to

什么是 Mermaid?

Mermaid 是一个开源的图表工具,允许你使用 简单的基于文本的语法(非常类似于 Markdown)来定义图表,并将其渲染为真实的图形。

你可以编写如下纯文本:

graph TD
  A --> B
  B --> C

…Mermaid 会把它转换成可嵌入文档、维基、博客或技术写作中的可视化流程图。学习成本低,友好于版本控制,并且可以与众多工具集成。(Mermaid

为什么 mmdc 是游戏规则的改变者

传统上,将 Mermaid 转换为 SVG、PNG 或 PDF 需要:

  • Node.js
  • npm
  • Mermaid CLI
  • 浏览器或无头工作者
  • 额外的系统工具

mmdc 改变了这一切。它是一个 纯 Python 解决方案——只需一次 pip install 即可安装,且 无需安装任何外部工具。它使用强大的库 Phasma,该库内部调用 PhantomJS 实例将 Mermaid 代码渲染为真实的图表输出——但你无需自行安装其他任何东西。这使得它非常适合 Python 环境、自动化、文档流水线以及 CI/CD 工作流。

安装

pip install mmdc

就这么简单——你已经可以使用了!不需要 Node.js、npm、apt 安装或浏览器。

在命令行中使用

将一个简单的 Mermaid 文件转换为 SVG:

mmdc --input my_diagram.mmd --output my_diagram.svg

只需指定扩展名即可生成 PNG 或 PDF:

mmdc --input my_diagram.mmd --output my_diagram.png
mmdc --input my_diagram.mmd --output my_diagram.pdf

非常适合自动化文档构建、静态站点生成器或博客流水线!

在 Python 中使用

直接从 Python 代码生成图表:

from mmdc import MermaidConverter

converter = MermaidConverter()

mermaid_text = """
graph TD
    A[Start] --> B{Is it cool?}
    B -->|Yes| C[Love it!]
    B ---->|No| D[Try again]
"""

converter.to_svg(mermaid_text, output_file="cool_diagram.svg")

简洁、强大,并能干净地与 Python 应用、文档生成器、Notebook 工作流以及自动化脚本集成!

示例 Mermaid 代码片段

流程图

graph LR
    A[Idea] --> B[Develop]
    B --> C[Test]
    C --> D[Deploy]

简单循环

flowchart TD
    Start --> Process
    Process --> Review
    Review -->|OK| End
    Review -->|Fix| Process

时序图

sequenceDiagram
    Alice->>Bob: Hello Bob!
    Bob-->>Alice: Hi Alice!

为什么这很重要

  • 无需外部设置: Python 开发者终于可以在不额外安装任何东西的情况下使用 Mermaid。
  • 适配文档自动化: 非常适合 Sphinx、MkDocs、Jupyter、Notebook 以及 CI/CD。
  • 以 Python 为中心的工作流: 将图表视为代码库中的一等公民。

总结

如果你一直在寻找一种 干净、仅依赖 Python 的方式来生成 Mermaid 图表mmdc 就是 重磅新闻。它把深受喜爱的基于文本的绘图方式直接带入 Python 生态——只需一次 pip install

现在,图表真的可以 代码优先——可版本化、自动化、轻量且美观——无需沉重的外部工具链。 💥

Back to Blog

相关文章

阅读更多 »