这个问题似乎在网上发布了很多地方,但我找不到一个满意的答案:
如何使用ICC配置文件将RGB值转换为CMYK值?
我得到的最接近的答案在那里,它解释了如何从CMYK转换为RGB,但不是相反的方式,这是我需要的。(http://stackoverflow.com/questions/4920482/cmyk-to-rgb-formula-of-photoshop/5076731#5076731)
float[] colorValues = new float[4];
colorValues[0] = c / 255f;
colorValues[1] = m / 255f;
colorValues[2] = y / 255f;
colorValues[3] = k / 255f;
System.Windows.Media.Color color = Color.FromValues(colorValues,
new Uri(@"C:\Users\me\Documents\ISOcoated_v2_300_eci.icc"));
System.Drawing.Color rgbColor = System.Drawing.Color.FromArgb(color.R, color.G, color.B);
我想我应该使用System.Windows.Media名称空间中的一些类/结构/方法。
System.Windows.Media.Color结构包含一个方法FromRgb,但我无法从该System.Windows.Media.Color中获取之后的CMYK值!
非常感谢
发布于 2011-03-09 06:37:36
根据MVP,GDI+可以读取CMYK,但不能对其进行编码(来源:http://www.pcreview.co.uk/forums/convert-rgb-image-cmyk-t1419911.html)。他们继续说,使用TIF作为中介格式可能是可行的。
除此之外,你可以在http://imaging.aurigma.com/上尝试Graphics Mill imaging for .NET (我和这家公司没有关系)。
我知道这不是一个很好的答案,但希望它能给你一些启发,并为你指明正确的方向。
发布于 2011-03-11 23:26:11
你可以看看这个:Convert RGB color to CMYK?
尽管这种转换是相当主观的,因此需要ICC配置文件,但您可能可以从ICC中提取“因子”并调整公式?
将RGB值转换为CMYK所需的上下文是什么?
https://stackoverflow.com/questions/5237104
复制相似问题