Mermaid流程图高效转换为图片方案
文章目录
- 一、三种不同环境下的转换方案
- 1. 正常联网环境
- 2. 可安装软件的隔离环境
- 3. 严格限制的企业环境
- 二、企业环境下转换图片方案
- 2.1 软件环境
- 2.2 操作步骤
- Step 1. 调用大模型API
- Step 2. 修改保存方式
- Step 3. 使用VS Code将Mermaid流程图转换为图片
- 总结
在之前的文章《快速生成代码流程图》和《使用Python和DeepSeek API一键快速生成代码Mermaid流程图》中,我们介绍了快速生成流程图的方法,并分享了使用脚本自动生成Mermaid流程图的方法。本文将重点探讨如何将Mermaid流程图转换为图片格式,并针对不同环境提供相应的解决方案。
一、三种不同环境下的转换方案
1. 正常联网环境
在能够自由访问互联网的环境中,我们可以直接调用相关API接口,将DeepSeek生成的流程图保存为图片格式。这种方法简单直接,无需额外安装软件。
2. 可安装软件的隔离环境
对于不能联网但允许安装软件的环境,可以安装mermaid-cli工具,通过简单的命令行循环语句即可实现批量转换,效率较高。
3. 严格限制的企业环境
这种情况最为复杂:只能访问内部网络,虽然本地部署了DeepSeek,但对软件安装有严格限制。
经过多次尝试,我们发现在此类环境中缺乏理想的批量转换方案。虽然使用draw.io逐个复制粘贴Mermaid流程图比手动绘制效率高很多,但操作步骤仍然繁琐,这使得前面介绍的自动生成Mermaid流程图的方法显得意义有限。
经过不断探索,我们最终找到了一种虽然不是批量转换但操作相对简便的解决方案。只需对原有脚本进行小幅修改,并配合一个VSCode插件即可实现(再次证明了VSCode的万能性)。
二、企业环境下转换图片方案
2.1 软件环境
- Python
- 本地部署大模型(如deepseek)
- VS code及插件其Mermaid Preview
2.2 操作步骤
Step 1. 调用大模型API
参考之前的《使用Python和DeepSeek API一键快速生成代码Mermaid流程图》中API调用方法
Step 2. 修改保存方式
在原有方法中,我们将所有流程图内容保存在单一文本文件中:
result = call_deepseek_api(func_name, func_code, file)
with open(new_file_name,"a", encoding="utf-8") as f: f.write(f"---函数名:{result['func_name']}(来自文件{result['file']})---\n")f.write(result['content']+"\n\n")
现在需要修改为每个函数单独保存Mermaid流程图文件:
result = call_deepseek_api(func_name, func_code, file)
with open(new_file_name,"a", encoding="utf-8") as f: f.write(f"---函数名:{result['func_name']}(来自文件{result['file']})---\n")f.write(result['content']+"\n\n")# 单独保存每个函数的Mermaid流程图文件
mmd_file = os.path.join(mmd_file_path, f"{function_id}.mmd")
mermaid_content = result['content']
# 清理内容格式
flowchart_content = mermaid_content.replace('```mermaid','').replace('```','').strip()
with open(mmd_file,"w", encoding="utf-8") as f_mmd: f_mmd.write(flowchart_content)
Step 3. 使用VS Code将Mermaid流程图转换为图片
相对于使用draw.io复杂的操作步骤,在VS code使用Mermaid Preview进行转换,堪称高效。转换步骤如下。
- 使用VS Code打开存放Mermaid文件的目录;
- 预览Mermaid流程图;
- 在预览图中直接点击保存流程图即可。

总结
通过上述方法,即使在严格限制的企业环境中,我们也能相对高效地将Mermaid流程图转换为图片格式,使得自动生成Mermaid流程图的工作流程保持其实际价值。
