PhotoCraft 是一款用纯 Rust 编写的开源桌面图像编辑器,支持图层、蒙版、文字、矢量与真实 PSD 文件,可离线完成修图。
- v0.23.1
- 发布于
- 1 天前
- 78,940
- 星标
- 1,394,969
- 下载
- 同步于
- 23 小时前
最新版本
v0.23.12026年11月12日 13:07下载慢?可在上方随时切换镜像源
项目说明
项目概述
PhotoCraft 是一款给摄影师、修图师与设计人员用的桌面图像编辑器,主要解决在离线环境下处理带图层、蒙版与真实 PSD 文件的修图需求。整套程序用 Rust 从零实现,文档模型、命令引擎与 egui 界面分层,画布由 wgpu 在 Metal、Vulkan、DX12 或 WebGPU 上合成,同一套代码也能编译成 WebAssembly 在浏览器中运行。快捷键沿用 ⌘J、⇧⌘D 这类 Photoshop 习惯,菜单与面板位置也按熟悉的方式排布。
| 项目 | 内容 |
|---|---|
| 平台 | macOS、Windows、Linux、FreeBSD、Web |
| 语言 | Rust,edition 2024,最低 1.95 |
| 版本 | 0.20.1 |
| 组成 | 24 个 crate,68 个工具 |
| 许可 | MIT 或 Apache-2.0 |
图层、蒙版、文字、矢量与 PSD 都在一个原生程序里,不套 Electron 外壳。
主要功能
- 调整图层:16 种调整图层,含按通道编辑的 Curves、带实时直方图的 Levels、Black & White、Channel Mixer、Gradient Map 等,可加蒙版、调顺序、随时关闭
- 图层样式:投影、内阴影、外发光与内发光、斜面和浮雕、缎面、描边与颜色/渐变/图案叠加,可复制粘贴到其他图层
- 选区与蒙版:矩形、椭圆、单行、单列选框与套索、魔棒,以及 Quick Selection、Object Selection、Select Subject 与 Select and Mask 边缘细化
- 文字排版:点文字与段落文字在画布上直接编辑,字符与段落面板控制字体、字重、字号、行距、字距、对齐与颜色
- 矢量形状:矩形、椭圆、三角形、多边形、直线与钢笔、自由钢笔、曲率钢笔,形状图层可做并集、差集、交集、排除
- 滤镜:模糊、锐化、降噪、扭曲、像素化、风格化与渲染类,所有对话框按选区在画布上实时预览
- 智能对象:智能滤镜与无损变换,滤镜参数可随时修改、隐藏、重排或加蒙版
- 历史与变换:完整历史面板、History Brush、Free Transform 的缩放、旋转、斜切、扭曲与透视
- 色彩管理:RGB、灰度、CMYK、Lab 文档,8/16/32 位每通道,ICC 配置文件指定与转换、软打样
⌘Y - 格式读写:PSD/PSB、分层 TIFF、OpenRaster、GIMP XCF、Krita
.kra、Paint.NET PDN3、SVG,以及 PNG、JPEG、WebP、GIF、OpenEXR、FITS 等平面格式与自有.pcraft
编辑工作流
- 打开文档:
photocraft image.psd启动桌面版并直接载入文件,图层与文字保持可编辑 - 非破坏调整:先在图层上叠 Levels 与 Curves,再用蒙版限定范围,原始像素不变
- 选区转蒙版:任意选区可一键变成图层蒙版、矢量路径或形状
- 提交前预览:滤镜参数在画布上按选区实时预览,确定后再写入图层
- 步进回退:历史面板按步记录,可回到任意一步,甚至单笔撤销
文件与格式
- PSD 往返:重存后在 psd-tools 测试集的 309 个文件中 307 个渲染一致,未建模的原始块会原样保留
- 形状精度:自有 PSD 语料中 116/116 个形状图层与 Photoshop 像素一致
- 大文档:PSB、16 位与 32 位、CMYK 与 Lab 文档均可原生打开
- 只读格式:iPhone 与 Mac 的 HEIC 照片、Affinity 的
.af/.afdesign/.afphoto/.afpub可打开查看,不写回 - 写出限制:AVIF 需可选
avif构建特性才能写出,AVIF 解码与 JPEG XL 尚不支持
适用人群
- 需要离线修图并保留图层的摄影师
- 从 Photoshop 迁移、不想重学快捷键的设计师
- 需要把修图步骤脚本化的自动化工程师
- 在 Linux 或 FreeBSD 上工作的图像处理用户
快速上手
桌面安装
- macOS 取
photocraft-0.20.1-macos-universal.dmg,打开后拖入 Applications - Windows 取
photocraft-0.20.1-windows-x64.msi,或直接用便携 zip - Linux 可选 AppImage、
.deb、.rpm、Flatpak 或 tarball,Flatpak 包名为ai.storyteller.photocraft
从源码运行
- 准备 Rust 1.95 或更新版本
- 执行
cargo run --release -p photocraft -- image.psd- 日文字体可把
CRAFT_FONTS_DIR指向craft-fonts目录,不设置则回退到系统 CJK 字体
命令行与自动化
- 用一条命令完成打开、滤镜与导出
photocraft-cli run wave.psd --cmd filter.sharpen.smartSharpen --params '{"amount":80}' --out wave-final.png- 批量套用动作:
photocraft-cli batch --actions grade.json --in ./raw --out ./graded - 以 MCP 方式供代理调用:
photocraft-cli mcp
系统要求
| 项目 | 要求 |
|---|---|
| 操作系统 | macOS、Windows、Linux、FreeBSD 14 |
| 架构 | x86_64、aarch64、Windows arm64;RISC-V 仅有 Linux tarball,需 glibc 2.39 以上 |
| 图形后端 | wgpu:Metal、Vulkan、DX12、WebGPU |
| 源码构建 | Rust 1.95 以上,24 个 crate 的工作区 |
| 浏览器版 | WebAssembly,可托管在任意静态服务器 |
注意事项
- 仍处早期阶段:AI 生成类功能、约 15 个工具以及排版深度与插件兼容仍缺失,日常专业修图需自行评估
- Wayland 拖放:Linux Wayland 会话下把文件拖入窗口暂不生效,可改用 File › Open 或按
Ctrl+V粘贴 - XWayland 缩放:125%、150%、175% 分数缩放下 XWayland 窗口会被放大而变模糊,原生 Wayland 才清晰
- PSD 非字节一致:重存的 PSD 会重写图像资源、图层记录与合成图,只有独立的
photocraft-psdcrate 能逐字节复现部分文件 - 品牌不在许可内:代码为 MIT 或 Apache-2.0 双许可,ArtCraft 名称与图标需按单独条款使用
历史版本
排序