背景
我正在尝试使用littleCMS 库在自定义应用程序中应用ICC 配置文件颜色校正。 我似乎一切正常,但当我尝试使用 adobe acrobat 仔细检查我的颜色校正时,值不匹配,甚至不是那么接近。
测试设置: 我在 Adobe illustrator 中创建了一个 PDF,其中包含一个在 CMYK 色彩空间中填充 100% 纯青色的框。 未嵌入 ICC 配置文件。 我使用内部 PDF 值提取工具从 sRGB 颜色空间中的该框中获取像素。
测试#1: 我的应用程序生成 RGB 颜色代码:红色:0,绿色:176,蓝色:240 这与 Adobe Acrobat 在模拟 sRGB 输出时对该文件的视图完全匹配(我使用 Windows Power Toys 颜色选择器来获取框中像素的 RGB 值)。
测试#2: 在我的应用程序中,我使用 littleCMS 库将此 RGB 值转换为 CMYK;从 sRGB 色彩空间到 ICC 配置文件 USWebCoatedSWOP.icc(从 Adobe here 获取)。 通过此转换,我得到 CMYK 值:(72%, 13%, 0%, 0%)。 当我设置 adobe acrobat 模拟输出“US Web Coated (SWOP) v2”时,我使用颜色选择器得到 CMYK 值:(100%, 27%, 0%, 6%)。
测试#3: 对 ICC 配置文件 EuroscaleCoated.icc 重复此操作。 从 LittleCMS 我得到 CMYK 值:(78%, 10%, 0%, 0%)。 当我设置 adobe acrobat 模拟输出“Euroscale Coated v2”时,我使用颜色选择器得到 CMYK 值:(100%, 29%, 0%, 8%)。
我也尝试过使用其他 ICC 配置文件进行相同的测试,但它们也不匹配。
问题:
我是否应该期望这两个工具匹配它们的颜色输出,或者我是否基于错误的假设进行此测试? 有没有不同的方法可以验证我的应用程序的颜色校正是否正确应用了特定 RGB 值的 ICC 配置文件?
使用 PDF 中嵌入的颜色配置文件的原因是,打印的颜色最接近硬件介质上的墨水所能达到的颜色。这是由于颜色方法的加法和减法的差异造成的,并且永远不可能相等。颜料自然会产生更暗的渲染,并且如果没有人工增白剂,一小部分专色将不会像荧光屏那样“明亮”。
这里用于测试的是一个 PDF,在 Acrobat Reader 中看到的上部部分没有任何修正,并在屏幕亮度下抓取。左上角的 RGB 是按照 Adobe 标准配置文件的数字屏幕颜色(与其他配置文件不同)。上半部分的右下角显示了 Adobe 的 CMYK 等效项(与可打印颜料相比自然更暗淡)。
下图显示了完全相同的 PDF(未修改,同时在同一明亮的屏幕上),但添加了颜色配置文件以将较亮的上部 RGB 静音,使其更接近可打印范围。
值得注意的例外总是绿色和灰色。总之,配置文件是为当地印刷厂设计的,以生产尽可能接近的颜色,以适应他们的介质、当地墨水和通常旧的硬件。因此,通常大多数印刷店都会接受 RGB 图形(除非用于打样,否则很少需要 CMYK 图稿)并混合油墨和印版,以尽可能满足过滤后的客户意图。