发现 
桌面应用设计创意
VectorCraft:纯 Rust 矢量绘图工具
用纯 Rust 编写的开源矢量插画软件,可绘制、编辑并导出 SVG/PDF,还内置 MCP 服务供 AI 代理调用。
- 浏览
- 4
- 访问
- 0
- 下载
- 0
- 版本
- v0.20.0
- 平台
- Windows、macOS、Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。
详细介绍
项目简介
VectorCraft 是 ArtCraft 团队开发的开源矢量插画应用,全部用纯 Rust 编写。同一套代码既可编译为 macOS、Windows、Linux、FreeBSD 的桌面程序,也能通过 WebAssembly 在浏览器中运行,界面与操作保持一致。项目以「熟悉、快速、健壮、开放、面向代理」为设计取向,操作方式和工具布局贴近主流矢量设计软件,熟悉 Illustrator 一类工具的用户可以直接上手。

主要功能
- 熟悉的工具与面板:钢笔、直接选择、Pathfinder、智能参考线、外观、色板、图层等工具、菜单与快捷键一应俱全。
- 实时效果:实时混合(Live Blends)、实时径向重复、外发光、渐变网格、封套扭曲、3D 绕转(3D Revolve)等,参数可随时修改。
- 精确曲线布尔运算:基于精确曲线的布尔运算,避免「无法执行操作」的报错;通过结构共享实现无限撤销。
- 多画板与标注:支持多画板、透视网格,以及线性、角度、直径、半径等尺寸标注,标注会跟随所测量的图形。
- 渲染性能:多线程 SIMD 渲染在 UI 线程之外执行,资料称全 retina 分辨率下 20000 个形状约 27 ms 渲染完成,界面维持 120 fps。
- 格式开放:原生
.vectorcraft(JSON)格式有文档说明,支持 SVG、PDF(以及兼容 PDF 的.ai)导入导出,PNG/JPEG/WebP 导出,还有 Export for Screens、SVGZ、模板、GIF、TIFF、BMP 打开。 - 代理原生(Agent-native):每个菜单项、工具手势、面板和对话框都能通过 JSON 控制通道驱动,并提供 MCP server,让 Claude 等代理像人一样绘制、编辑和导出。

安装与使用
从源码构建并运行桌面程序:
cargo run --release -p vectorcraft
cargo run --release -p vectorcraft -- examples/dusk-poster.vectorcraft
其他常用命令:
cargo run --release -p vectorcraft -- --control 7979 # 启动 JSON 控制通道
cargo run --release -p vectorcraft-cli -- mcp # 以 stdio 方式启动 MCP server
cargo run --release -p vectorcraft-cli -- run --in examples/ribbons.vectorcraft --export out.pdf
cargo xtask bundle # 打包 dist/VectorCraft.app(macOS)
浏览器版本需要 Trunk:
cd apps/vectorcraft-web && trunk build --release
仓库的 examples/ 目录提供多份示例源文件(海报、静物、工程图、透视城市等),可直接打开查看效果。
注意事项
- 项目状态标注为「in active development」,仍处于活跃开发阶段,功能与文件格式可能变化。
- 许可证为 Apache-2.0(README 徽章标注 MIT OR Apache-2.0,以仓库 LICENSE 为准)。
- 桌面版需自行从源码编译,README 只给出了 cargo 构建方式;正式安装包请参考仓库的 Downloads 说明与官网 https://getartcraft.com/apps/vectorcraft。
本作品整理自 GitHub 开源项目 storytold/vectorcraft,原作者 @storytold,许可证 Apache-2.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v0.20.0当前版本
VectorCraft v0.20.0
- v0.19.0
VectorCraft v0.19.0
- v0.18.0
加强参数校验:拒绝单位解析中的指数记法、导出尺寸中的符号与非数字文本、base64 解码中错位或多余的 = 填充;修正快捷键测试在不同平台的按键差异;补充 MCP 导出与 Image Trace 文档;修复串接文本在帧栅格化或新建符号时被重复的问题,复合路径属性面板只作用于所选路径。
评论