SuperAPI AI 工具集

drawio

设计与创作

查看项目

更新于 10-14 19:29

技能介绍

用途

本技能用于生成 draw.io 图,输出为原生 .drawio 文件,并可导出为带有内嵌 XML 的 PNG/SVG/PDF,方便嵌入 Word 等文档。

主要能力

  • 按请求生成 mxGraphModel 格式的 draw.io XML。
  • 使用创建/编辑文件工具将 XML 写入 .drawio 文件。
  • 通过随附的导出脚本将图导出为 PNG 等格式。
  • 导出脚本 drawio-to-png.mjs 为 Node.js 脚本,提供两种渲染后端:draw.io CLI(像素精准、速度最快,若安装了 draw.io 桌面版则自动使用)以及无头浏览器中的官方 draw.io 查看器(像素精准,需要 Chromium/Edge,作为 CLI 不可用时的回退方案)。

使用方式

依赖安装(一次性,从 scripts 文件夹执行): cd skills/drawio/scripts && npm install

导出单个图: node skills/drawio/scripts/drawio-to-png.mjs <input.drawio> [output.png]

导出目录中所有 .drawio 文件: node skills/drawio/scripts/drawio-to-png.mjs --dir <directory>

强制指定渲染器: node skills/drawio/scripts/drawio-to-png.mjs --renderer=cli|viewer|auto <input.drawio>

技能文件夹内容

  • SKILL.md:说明文件。
  • scripts/drawio-to-png.mjs:Node.js 导出脚本(CLI + 浏览器回退)。
  • scripts/package.json:依赖(puppeteer-core)。

支持的导出格式

  • png:内嵌 XML,随处可查看,可在 draw.io 中编辑。
  • svg:内嵌 XML,可缩放,可在 draw.io 中编辑。
  • pdf:内嵌 XML,可打印,可在 draw.io 中编辑。

XML 样式约定

为保持图的一致与专业,使用以下样式:

  • 主要服务(高亮):rounded=1;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;strokeWidth=2;arcSize=12;shadow=1;
  • 外部系统:rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;strokeColor=#666666;
  • 成功/处理阶段:rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;
  • 警告/质量门:rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;
  • 错误/失败路径:rounded=1;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;
  • 数据存储(圆柱):shape=cylinder3;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;
  • 箭头:edgeStyle=orthogonalEdgeStyle;rounded=1;strokeColor=#6c8ebf;strokeWidth=2;

定位 draw.io CLI

先尝试 drawio(若在 PATH 中),再回退:

  • Windows:"C:\Program Files\draw.io\draw.io.exe"
  • macOS:/Applications/draw.io.app/Contents/MacOS/draw.io
  • Linux:drawio(通过 snap/apt/flatpak)

CLI 导出命令

drawio -x -f png -e -b 10 -o <output.png> <input.drawio>

参数说明:-x(导出)、-f(格式)、-e(内嵌图 XML)、-b(边框)、-o(输出路径)。

适用场景

需要生成 draw.io 图并嵌入 Word 文档、或需要以 PNG/SVG/PDF 形式输出且保留可编辑 XML 的场景。

限制

资料未提供收费、价格与具体平台兼容性等额外信息,暂未提供更多限制说明。