将CIELab颜色值转换为CMYK的最准确方法是什么?我一直在查看ColorMine library,它似乎首先是从CIELab转换为RGB,然后是从RGB转换为CMY,再从CMY转换为CMYK。这是最好还是正确的方法?
这里是从RGB转换为CMY的示例。对我来说似乎很原始,我认为它假定RGB和CMY的白点相同,对此我不确定。
internal static void ToColorSpace(IRgb color, ICmy item)
{
item.C = 1 - (color.R / 255.0);
item.M = 1 - (color.G / 255.0);
item.Y = 1 - (color.B / 255.0);
}
答案 0 :(得分:2)
在Lab,CMYK或RGB之间转换没有唯一的准确方法,因为CMYK和RGB都取决于设备。
本质上,准确的转换要求您首先具有将在其上显示CMYK颜色的设备的规格。只有这样,您才能计算出与该特定设备上的Lab颜色匹配的确切CMYK颜色。没有设备数据,您只能生成一个近似值。
这是ICC配置文件的来源。支持CMYK的设备的ICC配置文件将包含用于在Lab和CMYK之间进行转换的表。