打不开同事的VSDX文件?drawio-desktop免费跨平台画图工具实测手记
打不开同事的VSDX文件?drawio-desktop免费跨平台画图工具实测手记
【免费下载链接】drawio-desktopOfficial electron build of draw.io项目地址: https://gitcode.com/GitHub_Trending/dr/drawio-desktop
周一早会前,同事甩来一个.vsdx文件,客户流程图,半小时后就要用。我盯着 macOS 桌面上那个打不开的文件发呆,脑子里快速过了一遍方案:装 Visio?要钱;在线转换?样式全丢。最后救场的是drawio-desktop——draw.io 官方推出的 Electron 桌面版,免费开源,能直接编辑 VSDX,连线、图层、样式原样保留。这篇就把我从下载到上手的实测过程写给你。
为什么我选"官方桌面版"而不是网页版
你可能会问:draw.io 不是有网页版吗,何必多装一个客户端?我实测下来的感受是:画图这活儿,还是本地跑踏实。
drawio-desktop 本质是用 Electron 把 draw.io 核心编辑器包了一层,源码入口在 src/main/electron.js,preload.js 负责界面与主进程通信。它和网页版最大的区别在于两点:一是彻底离线可用,断网照常画;二是数据不出本机,官方在安全说明里写得明明白白——界面部分的 Content Security Policy 禁止加载任何远程 JavaScript,也不会往外面传你的图表或发使用统计。
说白了,图是公司资产,我不想让草稿级别的方案图经过第三方服务器。桌面版这点很对我的胃口。
第一次上手:从下载到画出第一张图
拿 Windows 来说,发布页提供了三种安装包,这里有个容易踩的选择题:
windows-installer.exe:装到 Program Files,需要管理员权限;.msi:装到用户目录,不需要管理员,公司电脑没管理员权限就选它;windows-no-installer.exe:便携版,解压即用,不注册文件关联,U 盘党福音。
macOS 和 Linux 也有对应的 dmg、deb、AppImage 等产物,官方打包配置分别写在 electron-builder-win.json 和 electron-builder-linux-mac.json 里,想研究分发细节可以去翻。
想从源码跑开发版也很简单,注意 Node.js 得 ≥ 22.12:
git clone https://gitcode.com/GitHub_Trending/dr/drawio-desktop npm install npm start第一次打开,界面是典型的三栏式:左侧形状库、中央绘图画布、右侧属性面板,顶部菜单栏和工具栏一应俱全。
那天我花两分钟画完客户流程图发给同事,对方用 Visio 打开后回复:"可以啊,格式没乱。"就这一句,值了。
三个让我"回不去"的功能
第一,VSDX 原生编辑是真的。不用转 PDF 再转图片那套折腾流程。打开File → Open选 VSDX 文件,直接拖拽形状、双击改文字,改完File → Export as可以存回 VSDX,也能导出 PNG、SVG、PDF 等格式。客户拿回去能在 Visio 里继续编辑,而不是收到一张"死图"。
第二,一次导出多种格式。File → Export as里可以按需导出多份,配合Arrange → Ungroup拆解复杂形状,处理别人给的"一坨"图形特别顺手。团队里有人要 PPT、有人要 PDF、有人要高清 PNG,一条流程全搞定。
第三,更新行为完全可控。对需要内网隔离的企业场景,src/main/disableUpdate.js 里提供了开关:设置环境变量DRAWIO_DISABLE_UPDATE=true,或启动时加--disable-update,就完全关闭启动时的更新检查。命令行参数解析逻辑在 src/main/args.js,窗口位置记忆在 src/main/window-bounds.js,想定制行为都有明确的代码入口。
新手最容易踩的几个坑
- 克隆要带
--recursive:draw.io 核心编辑器是 git 子模块,不带这个参数拉下来编译会失败。忘了的话补一句git submodule update --init。 - Node 版本别太老:官方要求 ≥22.12.0,用老版本 LTS 跑
npm install可能各种报错。 - 安装包选错被拒:公司电脑没管理员权限,就老老实实用 MSI 或便携版,别跟 exe 死磕。
- 图里别塞外部资源:如果图里引用了外部 URL 的图片或字体,打开时会联网拉取,对方服务器能看到你的 IP(不会传图表内容)。从不可信来源收到的文件,打开前留个心眼。
- 想改代码自用:项目是 Apache 2.0 许可,但官方明确不接受外部 PR。自己 fork 后编译需要设
DRAWIO_UNSIGNED=true跳过签名,具体步骤在 doc/BUILDING_FOR_PERSONAL_USE.md 里写得很详细。
适合谁用,以及怎么开始
如果你属于下面任何一种情况,我建议现在就试试:
- 在 macOS / Linux 上干活,却时不时要处理 Windows 同事发来的 VSDX;
- 公司内网环境,需要一款不联网、不"回传"数据的画图工具;
- 不想为偶尔画张流程图付几百美元年费的个人或小团队。
起步方式二选一:嫌麻烦就直接去发布页下载对应平台的安装包;想折腾就按上面的命令git clone https://gitcode.com/GitHub_Trending/dr/drawio-desktop自己构建。我第一次用它改完那个 VSDX 只花了三分钟,从此再也回不去"先转 PDF 再标注"的苦日子了。你的下一张图,值得用更顺手的工具来画。
【免费下载链接】drawio-desktopOfficial electron build of draw.io项目地址: https://gitcode.com/GitHub_Trending/dr/drawio-desktop
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
