Carbon.now.sh 和 ray.so 是大多数开发者最终会在其中二选一的免费网页工具。截图上看它们很像,其实并不太像。差别在理念上,而这个差别决定了你该把哪一个加进书签。

比较之前先说明:我们做的是 Codeshot,同一领域里的一款付费 macOS 应用。它不在被比较的两者之列,而「这两个选哪个」的诚实答案往往就是「这两个之一」——所以这篇讲的是它们,不是我们。

Carbon:所有旋钮都摆在外面

Carbon 是最早的那个,开源,GitHub 上超过 36,000 颗星,至今仍在活跃维护。它的设计理念是:什么都应该能改。主题、字体和字号、内边距、窗口样式、行号、背景色或渐变、投影、导出格式和倍率。

这确实强大,也正是不少人退避的原因。第一次打开 Carbon,迎面就是一排十几个选项的控制栏,调到自己满意要花上几分钟。

该用 Carbon 的时候是:图片本身比花掉的时间更重要——一张会议幻灯片、一个博客头图、README 的首图。任何你会看不止一次的东西。

ray.so:做三个决定就完事

Raycast 团队做的 ray.so 提供一小组精选渐变背景、几个主题、内边距,以及深色或浅色。导出为 PNG 或 SVG。功能基本就这些,这种克制是刻意的。

结果是你很难用它做出难看的图,也很难在上面耗掉二十分钟。粘贴、选个渐变、导出。

该用 ray.so 的时候是:你正在对话中间。时间线上的一条回复、一个 Slack 讨论串、给同事的一个快速答复。图片是一次性的,快才是全部意义。

判断标准

想想这张图会活多久。

一次性的、对话的一部分、明天就忘了——ray.so。要留存的、你要发布的东西的一部分——Carbon。如果你发现自己在跟 ray.so 的限制较劲,那说明这张图比你以为的更重要,与其绕过去,不如换成 Carbon。

两者都没解决的问题

它们都是网页,因此有两个共同的局限。

你的代码进了浏览器。 这一点上两者表现都很规矩——Carbon 开源,你可以确切读到它做了什么——但「规矩」和「从没离开过我的机器」不是一回事。如果你粘贴的是尚未发布的功能或客户的代码,这个区别对你也许无所谓,对你上面的某个人可能有所谓。

两者都不记事。 每次打开都从默认值开始。如果你每周都要发风格统一的代码图片,那就是每次重新做一遍同样的决定。

这两处空白正是这一类原生应用存在的理由,Codeshot 也是其中之一。如果它们描述的不是你的处境,那它们就不构成理由——一个你本来就喜欢的免费工具,比一个你不需要的付费工具是更好的答案。

想看更完整的一批,包括编辑器扩展和命令行工具,见2026 年 Carbon.now.sh 的 7 个替代品