ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

不买 Visio:用 draw.io 桌面版免费打开、编辑并导出 .vsdx 文件

不买 Visio:用 draw.io 桌面版免费打开、编辑并导出 .vsdx 文件

不买 Visio:用 draw.io 桌面版免费打开、编辑并导出 .vsdx 文件

【免费下载链接】drawio-desktopOfficial electron build of draw.io项目地址: https://gitcode.com/GitHub_Trending/dr/drawio-desktop

同事在 Windows 上用 Visio 画完流程图,把 .vsdx 文件丢给你,你的 Mac 或 Linux 上连打开的入口都没有。先别急着买授权:draw.io 桌面版,官方出品的 Electron 桌面应用,能直接打开 Visio 文件、全程离线编辑,还能导出 PDF、PNG 等格式,完全免费。

技术底色:本地优先的桌面壳

它是 Electron 壳子,装载 draw.io 核心编辑器,drawio/目录是 git submodule。桌面壳按 GPL v3 协议发布(见 package.json 的 license 字段),核心编辑器为 Apache 2.0。内容安全策略禁止运行远程加载的 JavaScript,图表数据不上传、无统计上报,默认唯一联网行为是更新检查。

从源码跑通 draw.io 桌面版只要三条命令

前置条件只有一个:Node.js 22.12 或更高,package.json 的 engines 字段写死了这个下限。

git clone --recursive https://gitcode.com/GitHub_Trending/dr/drawio-desktop cd drawio-desktop npm install && npm start
  • 第一条:--recursive负责初始化 drawio 子模块,漏掉它核心编辑器目录是空的,启动必失败
  • 第二条:进入仓库根目录
  • 第三条:装完依赖直接启动,弹窗即是完整绘图界面,无需任何额外配置

能力地图:四个高频场景

导入 VSDX 文件:draw.io 桌面版直接打开即可编辑

  • 场景:同事在 Windows 上用 Visio 做的文件,你要在 Mac 或 Linux 上继续改
  • 操作:把 .vsdx 文件拖进应用或菜单打开,形状、连接线和文本都会转成可编辑元素,不需要任何第三方转换器
  • 证据:src/main/args.js 中--export的说明明确写着"除 draw.io 文件外,vsdx、csv 和 Mermaid(.mmd/.mermaid)输入也受支持"

命令行批量导出 PDF、PNG 与 SVG

  • 场景:CI 流水线自动出图,或一次把几十张图交付给文档系统
  • 操作:安装好的 draw.io 本身是命令行工具,用--export指向整个文件夹即可批量转换
  • 证据:输出格式被正则白名单限定为 pdf、svg、png、jpeg、jpg、xml、html 七种,--all-pages导出全部页,--width、--height可约束输出尺寸,均在 src/main/args.js 中可核对
drawio --export -fpdf -a --width 1920 diagrams/

-fpdf指定格式,-a即--all-pages,缺省输出与输入同名。

彻底离线:一行关闭更新检查

  • 场景:内网隔离的办公环境,或图表涉及敏感架构信息、不允许出内网
  • 操作:启动时加--disable-update参数,或设置环境变量DRAWIO_DISABLE_UPDATE=true
  • 证据:README.md 的 Security 一节写明"除更新流程外与互联网完全隔离",且"不向外部发送任何图表数据或使用统计"

按权限选 Windows 安装方式

  • 场景:公司电脑被 IT 管控,你没有管理员权限
  • 操作:选 MSI(装到用户目录,按用户安装)或便携 zip(解压即跑),都免管理员;NSIS 安装器才需要管理员权限
  • 证据:README.md 的 Windows installation 一节列全了三种包的差异,ARM64 设备另有原生包

横向参照:三条决策线

对比维度draw.io 桌面版在线绘图Visio
平台Windows / macOS / Linux依赖浏览器基本只有 Windows
费用免费(GPL v3 / Apache 2.0)免费档功能受限按年订阅
数据去向全部留在本机需联网传输本地处理
VSDX 导入直接打开并编辑支持有限原生支持

避坑与澄清

⚠️npm install 失败先查 Node 版本。低于 22.12 会直接不满足 engines 声明,这是 package.json 写明的最低要求。

⚠️打开来源不明的图表会触发外部请求。README.md 提醒:若图表引用了外部图片、背景或字体,打开时会向这些 URL 发请求,可能把你的 IP 暴露给对方服务器——图表内容本身不外发,但小心匿名性。

⚠️你的图表存在哪?macOS 是~/Library/Application Support/draw.io,Windows 是C:\Users\<用户名>\AppData\Roaming\draw.io\,均在 README.md 中列出,删机器前先备份。

它会不会把图表传到云端?不会。默认唯一联网行为是启动时的更新检查,用--disable-update可彻底关闭,src/main/disableUpdate.js 即为此开关的实现。

下一步

今天有人又给你发 .vsdx,直接跑:

git clone --recursive https://gitcode.com/GitHub_Trending/dr/drawio-desktop

装好依赖npm start就能用。想改外壳自己构建?doc/BUILDING_FOR_PERSONAL_USE.md 有 fork 后打无签名包的完整步骤。

【免费下载链接】drawio-desktopOfficial electron build of draw.io项目地址: https://gitcode.com/GitHub_Trending/dr/drawio-desktop

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进