C # преобразовывает значение RGB в CMYK с помощью профиля ICC?

этот вопрос, кажется, размещен во многих местах в сети и SO, но я не смог найти удовлетворительного ответа: (

Как я могу преобразовать значение RGB в CMYK значение с использованием профиля ICC?

Ближайший ответ, который у меня есть, там, где объясняется, как преобразовать из 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, но после этого я не могу получить значения CMYK из этого System.Windows.Media.Color!

Большое спасибо

17
задан Paul Suart 22 August 2011 в 03:37
поделиться