刚爆火:创建 6 天冲到 4638 星,开源图像编辑器 Compositor 正在接管你的修图需求

发布时间:2026/10/10 19:35:42

刚爆火:创建 6 天冲到 4638 星,开源图像编辑器 Compositor 正在接管你的修图需求 刚爆火创建 6 天冲到 4638 星开源图像编辑器 Compositor 正在接管你的修图需求【免费下载链接】CompositorThe Photoshop alternative for Mac项目地址: https://gitcode.com/gh_mirrors/compos/Compositor2026 年 9 月中旬一个 macOS 原生的开源图像编辑器突然冲进 GitHub 日榜随后连续多日霸榜趋势话题创建仅 6 天便收获 4638 颗 Star。它叫 Compositor项目自述只有一句话——The Photoshop alternative for Mac。在 GIMP、Photopea、Krita 早已占据开源修图心智的今天一个 Swift 写就、仅支持 Apple silicon 的新项目凭什么爆火带着这个问题我翻完了这个仓库的全部源码。结论是Compositor 的热度不是营销的结果而是它把 Photoshop 的核心工作流、非破坏性编辑、AI 时代的文件格式和 macOS 原生体验拧成了同一件事。本文将结合社区情报与源码拆解它为何值得你关注以及它到底是怎么做到像素级对标 PS的。Swift 做壳、C 做像素一套被刻意拆成两层的架构Compositor 的工程结构一眼就能看出设计意图。UI 层是纯 SwiftSwiftUI AppKit全部位于 Compositor/UI 与 Compositor/Document 下而所有逐像素运算都下沉到 C 内核集中在 Compositor/Rendering 目录里。这是一条非常老派的路线——像 Photoshop 早期一样用最快的语言处理最重的循环用高级语言包一层好用的壳。看几个具体例子污点修复画笔选斑、取样、匹配纹理的算法实现在 HealPixels.c 里。它以环带包围选区用均方误差逐块评分寻找与修复区周边最匹配的补丁heal_score函数并拒绝一切会重叠或越界的候选。魔棒工具颜色容差匹配与连通域扫描在 WandPixels.c 中完成种子点附近取平均色作为参考色按容差扩散。它甚至为描边路径设了 800 万像素的边界上限防止超大选区把路径绘制拖垮。Camera Raw 调色白平衡、曝光、对比度、高光阴影、鲜艳度等一整套等级曲线全部逐像素实现在 AdjustPixels.h 声明的adjust_camera_raw中色彩平衡、黑白映射、颗粒、渐变映射也在同一份 C 代码里。内容感知填充ContentFill.swift 把选区蒙版与图像交给content_fill()这个 C 函数合成新的像素来填补被移除物体的区域失败时返回明确的错误提示选区内没有足够的未选中像素。而在合成渲染一侧Compositor 选择了 Metal。打开 GPUCanvas.swift文件头注释写得很直白Core Graphics 在 CPU 上逐层合成Retina 屏幕上一张全尺寸图层每帧大约要花 5 毫秒拖拽、平移、缩放时每一帧都在重复GPUCanvasRenderer 则把图层作为纹理留在 GPU 上一帧只做一次重新摆放。它还用了一个纹理缓存池——空闲 90 帧未使用的纹理会被释放系统内存告急时优先丢掉非当前帧的资源形成一套完整的显存/内存压力自适应策略。为了在大画布上保证流畅渲染层还叠加了平铺渲染TiledLayerRenderer.swift与多级降采样缓存DownsampleCache.swift笔划进行中的图层被切成 256 像素的小方块增量重建已提交的快照用 1024 像素大块缩小时先做锐利的 2 的幂次减半再交给 Core Graphics 完成最后一小步重采样既保证画质又不浪费算力。值得强调的是DocumentLimits.swift 把容量上限设计成了随内存缩放画布最长边 3 万像素整份文档的像素预算取物理内存的 1/4按 4 字节每像素折算下限不小于单个渲染表面2 亿像素上限封顶 8 亿像素。换句话说你的 Mac 有多大内存Compositor 就敢开多大的文档——这是原生应用才能给到的待遇。6 天 4638 星热度背后是需求缺口被精准命中这个项目的出圈轨迹几乎可以按天复盘9 月 20 日它登上 GitHub 日榜社区当日趋势速报将它与一批 AI 代理项目并列盘点9 月 22 日便有深度文章开始逐模块剖析它的图层系统、Metal/C 混合渲染管线、.project文档格式与自动化测试9 月 26 日主流技术社区给出100% 开源免费对标 Photoshop的定位热评。而它的 Star 数在创建第 6 天就冲到 4638 颗——作为对比绝大多数开源图像编辑项目需要数月甚至数年才能摸到这一量级。为什么是它社区讨论的答案高度集中在三点第一MIT 协议 免费商用。仓库 LICENSE 是标准的 MIT License版权归属 Wonder Assembly LLC。这意味着个人创作者可以拿去商用出图开发者可以拿去改造成自己的产品公司可以嵌入自己的管线全部零授权费。第二Photoshop 工作流的低迁移成本。README 里作者坦言Adobe Photoshop 太贵而 GIMP 等工具用起来不够顺手让他无法保持心流。于是 Compositor 把 Photoshop 的肌肉记忆整个搬了过来——完整按 Photoshop 顺序排列的混合模式、图层文件夹文件夹不透明度会压暗内部所有层、⌘E合并、⌘C/⌘V跨工程复制图层、Photoshop 式快捷键并可重映射、拖拽数字标签进行 scrubbing 取值。对从 PS 迁移过来的用户几乎零学习曲线。第三它真的能打开你的 PSD。社区里开源版 Adobe最大的槽点往往是复杂 PSD 打不开。Compositor 用一套先出转换报告、再执行导入的安全流程接住了这个痛点8-bit RGB 的 PSD/PSB 导入时文件夹、蒙版、混合模式、填充矩形/椭圆以及简单的横向文本都会保留为可编辑对象矢量与竖排文本则栅格化为像素——每一步都先告诉你会发生什么。三个与 Photoshop 拉开差距的细节热度能带来 Star但让用户留下的是下面这些在源码里经得起推敲的设计。1. 非破坏性编辑贯穿全程Compositor 的变换是非破坏性的图层无论缩得多小原始分辨率都保留在工程里README 原话images keep their full resolution however small you make them。图层效果描边、投影、内阴影、外发光、内发光由 GPU 实时渲染且可随时回改参数对应实现见 LayerEffectsSurface.swift调整图层色阶、曲线、色相/饱和度、曝光、渐变映射、颗粒、黑白、色彩平衡、反相、高斯模糊、动感模糊、噪点作为独立图层存在于图层栈中随时可重新编辑。这种非破坏性进一步延伸到画布操作Canvas Size 扩展画布、Image Size 重采样、Crop 裁剪都会保留未触及图层的数据与调整结构。2. 面向 AI 时代的工程文件格式Compositor 最超前的设计是它的工程格式.comp不是一个二进制大文件而是一个文件夹——manifest.json 一堆 PNG 图层。规范写在 docs/project-format.md从 1 到 11 的版本演进记录得非常细致v2 加图层组、v3 加不透明度与混合模式、v4 加蒙版、v7 加调整图层、v9 加邻域采样类调整高斯模糊/动感模糊/噪点、v10/v11 给文字图层加局部颜色与字体 runs。而 docs/writing-comp-files.md 则直接面向 AI 代理任何能写文件的脚本都可以按先写 PNG、再原子替换 manifest的规则实时修改一个打开中的工程Compositor 会在写入停止后约 0.3 秒内热重载画布。这意味着什么AI 绘图工具生成的是图片而 Compositor 生成的是一份可继续编辑的分层工程——AI 代理可以直接对用户的画布做一步一层的渐进式创作用户则拿到普通图层改不透明度、换混合模式、给蒙版补两笔、保存。这是 Claude Code 们协作画布的标准姿势也是传统图像编辑器从未提供过的原生接口。3. 原生级系统集成作为 Apple silicon 独占应用Compositor 把系统能力用到了极致选区工具里的主体选择Select Subject直接调用 Vision 框架的VNGenerateForegroundInstanceMaskRequest见 ObjectSelection.swift点一下即可把点击处的完整前景实例追踪为路径选区画布渲染走 Metal⌘F命令面板像 Raycast 一样检索全部菜单命令工程文件保存期间可继续操作异步原子保存导出走签名 公证 自动更新。对 macOS 创作者来说这些都是长在系统上的体验而不是移植软件的违和感。接下来值得关注的三个里程碑热度已经证明了需求存在但 Compositor 的挑战也肉眼可见接下来的走向取决于三个关口一是兼容性边界的扩展。目前 PSD 仅支持 8-bit RGB不支持 CMYK文本图层、智能对象会被栅格化。若要在Photoshop 替代品的叙事里走得更远CMYK 工作流与更完整的矢量保留是绕不开的硬仗。二是平台边界。项目明确要求 macOS 26.0 与 Apple silicon且当前只接受英文、拒绝本地化 PRREADME 明确说明这是单人维护的决定。这既是极致原生体验的来源也限制了它的用户盘子。当 4638 颗 Star 里混入大量 Windows/Linux 用户的期待时作者如何回应会是一个观察点。三是单人维护的可持续性。整个仓库的代码风格高度统一、注释密度惊人、CI 全量跑测试说明维护者工程素养极高但 README 也坦诚maintained by one person。当功能请求涌来、PSD 兼容性诉求升级时是引入协作者、还是守住一人一剑的边界将决定这个项目是成为下一个 GIMP 还是下一个昙花一现。无论结局如何Compositor 已经做对了一件事它证明免费开源的 Photoshop这道题除了 C 巨型单体还存在 Swift C Metal Vision 的原生解法——而且这个解法跑得飞快。对于想研究图像编辑器架构的人Compositor/Document 下的 60 多个模块就是一本活教材对于想真正摆脱 PS 订阅费的 Mac 创作者它已经值得你下载一试。【免费下载链接】CompositorThe Photoshop alternative for Mac项目地址: https://gitcode.com/gh_mirrors/compos/Compositor创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/10 19:35:42

线上故障复盘:128MB堆内存泄漏实战排查

这是一个系列, 标题叫做线上问题实战录, 这是第二篇, 本文里面所有的命令和输出的内容全部都是从真实的复现环境里拿来的, 可以按照这个步骤一步步来重现。1. 问题现象的部分内容是一点一, 也就是告警。在凌晨两点十七分的时候, 告警群里弹出了一个消息。[PRODUCTION] CPU 使用…

2026/10/10 19:35:42

GPT-5.5 vs DeepSeek-V4:技术速览与 TaoToken 统一接入实测

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 19:30:41

PHP程序员学习困局:从“学而思”到“思而学”的进阶之路

1. 从“学而思”到“思而学”:PHP程序员的学习困局1.1 为什么大多数PHP程序员卡在了“学而思”这一步“PHP程序员学而思 思而学?”这个标题我第一眼看到的时候,脑子里蹦出来的不是那个教育品牌,而是一句话:我们天天都…

2026/10/10 20:30:46

四数之和双指针解法:去重剪枝与复杂度优化全解析

1. 四数之和的题目定位与核心解题模型LeetCode第18题“四数之和”是双指针类问题的经典进阶题。凡是刷过题库的人,基本都走过这样一条路线:先做“两数之和”,再做“三数之和”,然后撞上这道“四数之和”。它考察的已经不只是哈希表…

2026/10/10 20:30:46

SpringBoot小型船舶进出港登记系统设计与实现

springboot小型船舶进出港登记系统,一眼看过去像是从毕业设计题海里随手捞出来的常规题目,但真把这套系统从头做下来你会发现,它比图书管理、考勤打卡这类“烂大街”题目更容易做出业务深度,也更好写论文。只要你把进出港的业务规…

2026/10/10 20:30:46

基于C语言编译器开发实战:从词法分析到目标代码生成

简介:这是一份面向计算机专业学生与编译原理学习者的C语言编译器课程设计资源,围绕词法分析、语法分析、中间代码生成与优化、目标代码生成等完整编译流程展开,适合作为课程设计参考或编译原理实践项目。压缩包共54个文件、约5.1MB&#xff0…

2026/10/10 20:30:46

回溯算法核心思想与统一模板:从递归到剪枝优化实战解析

回溯算法这个东西,说实话,刚接触的人容易把它想得太玄乎,觉得是什么高深莫测的招式。但拆开来看,它本质上就是穷举——只不过是有脑子、会反省、能做决定的穷举。我当年第一次真正把回溯搞明白,不是靠背模板&#xff0…

2026/10/10 7:31:36

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/9 20:15:56

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/8 6:05:44

无源低通滤波器设计实战:从RC到LC,手把手教你避开那些坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 0:04:53

从逻辑门到计算机:数字电路核心原理与全加器搭建实战

如果你拆过一台旧电脑的主板,盯着那些黑乎乎的小芯片看上一会儿,可能会冒出同一个疑问:这堆引脚密集的元件,到底是怎么“变”出那么复杂的应用的?答案并不在某个神秘的部件里,而是在所有芯片内部都在反复使…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑