一张图修了四十分钟,客户回我一句「颜色不对啊」
2021年我接了个小活,给一家做香薰的拍产品图。一盏补光灯加一块灰卡,拍完在笔记本上折腾了两个多小时,屏幕上看是那种奶白偏暖的质感,我自己挺满意。导出 JPG 发微信给客户,对面沉默了一会儿,回我:这怎么发灰了,还带点绿。
我当时第一反应是显示器的问题,第二反应是微信压缩。查资料查到凌晨三点,才慢慢意识到这两件事其实是一件事的两半,而且我判断的顺序是反的——真正的问题不在微信,在我按下「导出」的那一刻就已经埋进去了。
后来这一年多我又陆陆续续在公众号、小红书、知乎发图,同一个源文件在不同平台的呈现差异大得离谱,才逼着我把这整套逻辑理清楚。下面写的东西不是教程,是我自己踩坑踩出来的一条路径,不一定对所有人适用,但我敢说至少能帮你省下几个晚上的瞎折腾。
第一个坑:你以为你在调色,其实你在调一个看不见的颜色
这里先讲一个极其容易被忽略的区别。sRGB 和 Adobe RGB 不是「一个淡一个浓」这么简单。sRGB 是 1996 年惠普和微软一起定的标准,编号 IEC 61966-2-1,它的绿色和青色覆盖范围很小;Adobe RGB 是 Adobe 后来推的,色域大概比 sRGB 大 35% 左右,主要多出来的部分在青绿区间。
问题在于,绝大部分笔记本屏幕、绝大多数安卓手机、所有的微信小程序,默认都是按 sRGB 来解释图片的。你在 Adobe RGB 环境下调出来的那张图,颜色信息确实更丰富,但这部分丰富的颜色,别人根本看不见——因为他们的设备读不懂你图里附带的那个 ICC 配置文件。
所以会出现一个很诡异的现象:同一张图,在你电脑上看是浓郁的墨绿,传到别人手机上变成了灰扑扑的军绿。不是压缩的问题,是解释方式不一样。
这里有个操作层面的关键区别,我敢说一半以上的人分不清:Photoshop 里的「指定配置文件」和「转换为配置文件」是两回事。「指定」只改标签不动像素,你原来的颜色数值一个都没变,只是告诉软件「请用另一个标准来读它」,结果就是画面会突然跳一下颜色。「转换为」才是真正把每个像素的数值重新计算一遍,让它在新色彩空间里看起来还是原来的样子。很多人的图发出去变灰,就是因为用了「指定」而不是「转换」。
我自己现在的工作流很简单粗暴:只要图是给屏幕看的,全程 sRGB,从相机里就这么设。拍 RAW 的话在 Camera Raw 里第一步就把工作色彩空间设成 sRGB IEC61966-2.1,而不是 Adobe RGB。损失一点绿色表现力,换回来的是一致性。
第二个坑:平台压缩不是「变糊」,是重新分配了你的暗部
先给几个我实测出来的粗略数字,仅供参考,不同版本可能有差异。
微信发图(非原图模式),长边一般会压到 1280 像素左右,画质大概是原图的 80% 质量档;如果是发朋友圈,压缩会更狠一些。小红书上传后长边基本固定在 1080 像素左右,微博的压缩力度比前两个都大,尤其是暗部区域。
关键点在于,这些平台的压缩算法普遍会做两件事:一是丢掉高频细节(也就是锐度),二是保护亮部、牺牲暗部。所以你会看到一张夜景图发出去之后,天空的渐变里出现一圈一圈的色带(banding),而高光部分基本没丢。
这就解释了为什么你调完觉得刚刚好的暗部层次,发出去全糊成一坨。不是你的问题,是它主动把暗部压扁了。
我现在的对策是:导出前主动把暗部提亮大概 5 到 8 个色阶,对比度稍微收一点,把最黑的地方控制在 RGB 12 到 15 之间,而不是压到 0。这样经过平台压缩之后,剩下的暗部细节刚好落在能看见的区间里。
另外,别在 sRGB 的 8 位通道下做大幅度的渐变。8 位通道每个颜色只有 256 级,天空这种大面积渐变特别容易断层。修图的时候用 16 位通道(65536 级),最后一步再转回 8 位导出,这个习惯能省掉很多莫名其妙的色带。
第三个坑:那个 72 dpi,真的是个历史遗留物
这一点跟前面两个不是同一个层级的问题,但特别误导人。
Photoshop 新建文件的时候会让你填分辨率,默认 72 像素每英寸。很多人以为这个数字会影响图片在网络上的清晰度,于是在导出前把它改成 300。完全没用。
原因是:屏幕显示只认像素总数,不认 dpi。一张 2000×2000 像素的图,不管标 72 dpi 还是 300 dpi,在浏览器里显示出来的都是 2000×2000 个像素点。72 这个数字来自上世纪 80 年代 Mac 显示器的物理规格,属于历史遗留。
dpi 只在打印的时候才有意义。你要印一张 A4,300 dpi 意味着需要 2480×3508 像素左右。仅此而已。
所以别再纠结导出时那个 dpi 数值了,把注意力放到长边像素数上。发小红书就 1080,发微信就 1280,公众号封面有些位置需要 900×383,这些才是真正要控制的参数。
我现在固定用的七步导出流程
说这么多,不如直接把流程列出来。这套东西我自己用了大半年,出问题的概率降了很多。
第一步,确认全程在 sRGB 色彩空间里工作,编辑菜单里的「转换为配置文件」检查一遍,目标是 sRGB IEC61966-2.1。
第二步,调整长边像素。小红书 1080,微信 1280,网页插图我一般 1600。用「图像大小」,重采样选「两次立方(较平滑)」,缩小的话建议用「两次立方(较锐利)」。
第三步,锐化。用 USM 锐化,数量 60% 到 80%,半径 0.8 到 1.2 像素,阈值 2 到 5。缩小过的图锐化半径要更小,0.5 左右就够了,否则边缘会出现白边。
第四步,检查最暗和最亮的地方。用色阶工具看一眼,黑场不要低于 8,白场不要高于 247。
第五步,导出用「导出为」而不是「存储为」,格式选 JPG,质量 80 到 88 之间。这个区间是文件大小和画质的平衡点,再往上文件体积涨得很快但肉眼几乎看不出差别。
第六步,务必勾选「嵌入颜色配置文件」里的 sRGB。这一步不做,前面全白费。
第七步,导出来之后,把图拖进浏览器(Chrome 或 Safari 都行)看一眼,再传到手机上看一眼。两个设备都过一遍再发出去。
几个可能跟主流说法不太一样的结论
第一,对绝大多数做内容的人来说,校色仪不是必需品,但「知道自己屏幕的色域覆盖」是必需品。很多笔记本屏幕的 sRGB 覆盖率只有 60% 到 70%,你在这种屏幕上调出来的「准色」,本身就是在一个残缺的坐标系里画的。知道自己屏幕残缺在哪,比花两千块买设备更实际。
第二,不要迷信「原图发送」。微信的「原图」选项在很多情况下仍然会做微调,而且接收方如果用的是压缩过的预览,效果还是一样。与其指望平台,不如自己把图的宽容度做厚一点。
第三,也是最反直觉的一条:如果你主要发社交平台,那从一开始就按 sRGB 拍、按 sRGB 修、按 sRGB 导,比先用 Adobe RGB 修再转,效果好得多。因为转换过程中一定会遇到色域裁剪,那些超出 sRGB 的颜色会被硬生生压回边界,边缘区域容易出现色块或断层。与其让软件在中途做一次暴力裁剪,不如从一开始就不进入那个范围。
这套逻辑听起来像是自我设限,但做内容这件事,可控性比上限更重要。你没法控制别人用什么手机看你的图,你只能控制自己交出去的那一刻,它是什么样。