我知道可以将 plantuml 插入 draw.io 并使用 GUI 输出图表。请参阅https://www.drawio.com/blog/plantuml例如。
我知道可以使用命令行让 draw.io 桌面生成不同格式的图表,比如 pdf、png、svg。请参阅https://tomd.xyz/how-i-use-drawio/例如。
我想要做的是将两者结合起来:
- 仅使用命令行(或任何其他无头方法,如调用 API),
- 当输入仅是 plantuml 代码时
- 以 draw.io XML 格式或 .svg 格式生成图表
这可能吗?如果不行,有没有办法将它们拼接在一起?
答案1
这里有一个 Perl 脚本:
Github 上的 PlantUML 到 Draw.io Perl 脚本
从命令行将包含 PlantUML 代码的文件转换为 Diagrams.net(又名 Draw.io)XML 文件
使用方法:
./plantuml_to_drawio_xml.pl foo.plantuml > foo.drawio.xml
README 描述了脚本的作用:
- 使用 java 和 PlantUML jar 将 PlantUML 纯文本数据转换为 SVG 数据,使用 Base64 对 PlantUML SVG 数据进行编码
- 将 PlantUML 文本数据编码为 XML/HTML/URL 格式
- 从 SVG 数据中获取 SVG 尺寸,以添加到 Draw.io XML 参数中
- 获取 PlantUML 文件的最后修改日期,以将其设置为 Draw.io XML 参数中的修订日期
- 创建 Draw.io XML 文件并输出到标准输出