mermaid-renderer
# Mermaid 图表渲染器
将 Mermaid 语法图表渲染为终端 ASCII 文本或图片文件。
## 使用方式
### 基本用法
```
渲染以下 Mermaid 图表:
<mermaid代码>
[可选:导出为图片]
```
### 输出模式
| 模式 | 触发条件 | 输出 |
|------|----------|------|
| 终端 ASCII | 默认 | 直接显示在终端 |
| 图片导出 | 用户要求"图片"、"PNG"、"导出"、"保存为文件" | 生成 PNG 文件并上传 BOS |
## 执行流程
1. **解析用户输入**:提取 Mermaid 图表代码
2. **判断输出模式**:根据用户意图选择终端或图片
3. **终端模式**:使用 `python3.11 -m termaid` 渲染 ASCII
4. **图片模式**:调用 `scripts/render.py` 生成 PNG 并上传
## 支持的图表类型
- **流程图** (graph/flowchart)
- **时序图** (sequenceDiagram)
- **类图** (classDiagram)
- **饼图** (pie)
- **Git分支图** (gitGraph)
- **状态图** (stateDiagram)
- **ER图** (erDiagram)
详细语法参考见 `references/chart-types.md`。
## 示例
### 终端输出示例
```
渲染时序图:
sequenceDiagram
participant 用户
participant dodo
用户->>dodo: 发送请求
dodo-->>用户: 返回结果
```
### 图片导出示例
```
把下面的流程图导出为图片:
graph LR
A[开始] --> B{判断}
B -->|是| C[执行A]
B -->|否| D[执行B]
```
## 技术依赖
- **termaid**:Python 包,用于终端 ASCII 渲染(需 Python 3.11+)
- **matplotlib**:Python 库,用于图片生成
标签
skill
ai