☰
Compositor 免费 Photoshop 替代品 macOS 修图完整指南:零基础 30 分钟出片
2026/11/1 1:43:09 网站建设 项目流程

Compositor 免费 Photoshop 替代品 macOS 修图完整指南:零基础 30 分钟出片

【免费下载链接】CompositorThe Photoshop alternative for Mac项目地址: https://gitcode.com/gh_mirrors/compos/Compositor

Compositor 是一个免费、开源(MIT 协议)、面向 macOS 的Photoshop 替代品,核心是照片后期与图层合成:调色、蒙版、文字、非破坏性编辑都有,导入支持 JPEG、PNG、HEIC、TIFF、相机 RAW。这篇指南面向零修图经验的用户,带你走完"装好 → 导入 → 调出颜色 → 局部修改 → 加字 → 存档导出"的完整闭环,每一步都标注仓库里对应的源码位置,让你确认功能真实存在。

不编译源码,怎么把 Compositor 装到 Mac 上?

最省事的办法是官网 DMG 下载:拖进 Applications 就能用。DMG 出自 scripts/release.sh 的自动化流程——xcodebuild构建 Release、Developer ID 签名、notarytool公证、stapler打桩,最后create-dmg打包,产物是签名加公证齐全的包,Gatekeeper 不会拦你。

习惯命令行的话,一条命令搞定:

brew install --cask robbietilton-compositor

想改代码或加功能才需要走源码:需要 Apple silicon + macOS 26.0+ + Xcode 26+,打开仓库里的Compositor.xcodeproj跑Compositorscheme 即可(要求见 README.md)。普通用户不用碰这条路。

第一张图怎么导进来?

新建一个空白画布后,直接把照片拖进窗口就行,或者用文件菜单打开。导入器 ImageImporter.swift 处理常规图片,RAW 文件会先经过 RawImporter.swift 的一个"开发"步骤(就是定白平衡、曝光的环节)。PSD/PSB 也能直接打开,图层、蒙版、混合模式都会保留成可编辑图层——PSDReader.swift 负责解析,打开前会先弹一份转换报告让你确认。

救回灰蒙蒙的照片:用 Levels 一键拉通透

照片发灰,本质是"明暗没用满 0~255 的范围"。Levels(色阶,快捷键⌘L,Image 菜单下)专门干这个:把最暗和最亮的点对准,画面就通透了。

面板顶部是实时直方图,下面一排是输入黑场 / Gamma / 输入白场,再下面一排是输出黑场 / 输出白场。新手最该点的是Auto,它下面有三个按钮:Contrast、Color、Color + neutral midtones。这三个按钮背后是一套明确写在 LevelsAutomatic.swift 里的算法:先统计直方图,从两端找到累计占比超过 0.1% 的像素作为黑点白点:

for i in 0..<256 { sum += bins[i]; if sum > total * 0.001 { low = i; break } }

区别在于:Contrast 用同一个区间拉伸三个通道(保留色彩关系,不偏色);Color 对红绿蓝各算各的端点(修偏色更狠);neutral 版本还会额外反算一个 gamma,把中间调拉回中性。建议先点 Contrast,不满意再试 Color。

点 OK 之后,Levels.swift 里的commitLevels()会在后台线程按查找表逐像素处理,并用BrushRaster.inBands把图片切成多个波段并行计算,所以大图也转得快;完成后生成新图层像素,并记成一条名为 "Levels" 的撤销步骤——原图在任何一步都不会被破坏,⌘Z 随时回退。

只改某一类颜色:色相/饱和度定点调

整体通透之后,可能发现"就天空偏黄、皮肤偏粉"这种局部色偏。Hue/Saturation(色相/饱和度,快捷键⌘U)处理这个。

面板左上一排彩色圆点是Master(全图)+ 六种色域(Reds、Yellows、Greens、Cyans、Blues、Magentas),三根滑杆是 Hue(−180°~180°)、Saturation(−100~100)、Lightness(−100~100)。新手技巧:点选一个色域(比如 Yellows),再点旁边的吸管,到画布上点一下目标颜色,这个色域就会以你点的颜色为中心重新对准。这套行为由 HueSaturation.swift 里的HueBand.centered(on:)、include、exclude三个方法实现,分别是"居中、加宽、收窄"三种对准方式。

性能上也有讲究:拖滑杆时它不会逐像素重算颜色空间转换,而是先建一个 33×33×33 的查找立方体(源码注释原话是"33 点每轴,这类查找的标准尺寸"),再对像素查表,所以大图拖预览也流畅。

顺带一提:如果想扩大画布(比如给图片留白做构图),用 Image 菜单的 Canvas Size…(快捷键⌥⌘C),弹窗里有当前尺寸、新尺寸、锚点九宫格和扩展填充色——CanvasResizer.swift 负责这部分,缩放的图层像素不会重采样,无损。

只改画面的一个角落:蒙版是干嘛的

调色是对整层生效的。要是只想动局部(比如只压暗天空),正确工具是图层蒙版:给图层贴一张灰度"覆盖图",白处显示、黑处隐藏、灰处半透明。它在 LayerMask.swift 里以独立的灰度通道存储,和图层像素分开——涂错了不用撤销,拿画笔再涂一遍就行。

操作顺序:选中图层 → 加蒙版 → 用画笔(B)选黑色在要隐藏的区域涂抹,想恢复就切白色再涂。两个细节值得知道:

  • 蒙版可以和图层解除链接(unlink),之后能单独移动、旋转蒙版本身,合成两张图时很好用;
  • 蒙版边缘想柔和,用 Feather(羽化)或给蒙版加 Gaussian Blur,代码在 MaskTracing.swift 一带。

加一行字:按 T 直接在画布上打字

按T选文字工具,在画布上拖出一个段落框,直接键入——是真·行内编辑,不弹对话框。TypeTool.swift 定义的样式模型包含字体、字号、对齐、字距、行距,还支持给部分字符单独换字体换颜色(fontRuns、colorRuns机制)。关键一点:文字存的是矢量数据,不是栅格像素,变换文字图层不糊,还能当剪贴蒙版用。

配合 Move 工具的变换框(⌘H 显示/隐藏),缩放、旋转、微调位置都可以。这里有个非破坏性设计的核心:EditorSession.swift 的commitTransform()只改图层的transform(位置、大小、旋转、翻转)参数,从不触碰原始像素——今天缩小到 10% 的图层,明天放大回原尺寸依然是原画质。

工程文件 .comp 里到底存了什么?

Compositor 的.comp工程不是单个文件,而是一个文件夹包:manifest.json(清单)+images/(每层一个 PNG,蒙版是.mask.png)。结构在 docs/writing-comp-files.md 里写得很清楚:

Example.comp/ ├── manifest.json # 图层、变换、蒙版、调整参数的 JSON 清单 └── images/ └── 6F1D3C2A-….png # 图层的原始像素

保存时由 ProjectStore.swift 逐层编码 PNG、JSONEncoder 写清单、整体原子替换包目录。这意味着"非破坏性"的完整含义:存档存的不是一张图,而是你的整个编辑现场——图层、蒙版、调整、变换参数全部保留,下次打开继续改。还有一个隐藏福利:因为内容就是 PNG + JSON,脚本或 AI 代理可以直接读写这个文件夹来生成或修改项目,而打开着的项目会在写入后约半秒内热重载画布(见 ProjectWatcher.swift 的监听逻辑)。

导出为什么总踩坑?三个点一次说清

修完了,用Export As(⇧⌥⌘W)导出,面板实现在 ExportAsSheet.swift。坑都替你标好了:

  1. JPEG 没有透明度。画面带透明区域时导 JPEG,面板会强制你选一个填充背景色(默认白)。先想清楚要白底还是黑底,再点导出。
  2. 质量滑杆和体积实时联动。0~100% 拖动时预览和文件大小同步更新,在"画质够用"和"体积够小"之间直接权衡;上次用的质量会记住。
  3. 尺寸缩放。可导出画布 25%~200% 的比例,宽高锁定等比。默认是原尺寸,发图前确认一下比例。

另外两个更简单的出口:PNG(⇧⌘E,保留透明)和JPEG(⇧⌥⌘S)。需要透明背景就认准 PNG。

第一次上手自检清单

  • 安装后应用能打开,没有"无法验证开发者"弹窗(DMG 已签名公证);
  • 照片导入后,Image > Levels(⌘L)> 点 Auto > OK,画面变通透;
  • Image > Hue/Saturation(⌘U)切到一个色域,用吸管点画面里的目标颜色,饱和度 +10 试试,颜色只在该区域变化;
  • 给图层加了蒙版,黑笔涂掉的区域,换白笔能涂回来;
  • 文字用 T 工具打出后,缩到 50% 再放大,边缘依然锐利(矢量,不重采样);
  • 保存成.comp后用 Finder 展开,能看到manifest.json和images/里的 PNG;
  • Export As 里选了 JPEG 且画面带透明时,面板出现了背景色选项——这是预期行为,不是 bug。

全勾上,你的第一张图就算完整走通了:从一张灰片到带蒙版、带文字、可无损继续编辑的工程文件,全程零付费、零订阅。

【免费下载链接】CompositorThe Photoshop alternative for Mac项目地址: https://gitcode.com/gh_mirrors/compos/Compositor

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询