TranslateColors () цветовая гамма RGB и CMYK - PullRequest
0 голосов
/ 06 декабря 2011

Я использую API TranslateColors () для преобразования RGB в CYMK. Я мог бы преобразовать это.

http://www.tech -archive.net / Архив / Разработка / microsoft.public.win32.programmer.gdi / 2007-10 / msg00049.html

В приведенном выше примере значение RGB смещено влево на 8 и передано в вышеуказанную функцию. И результат, CYMK смещен вправо на 8.

Как я знаю, значения CYMK варьируются от 0 до 1. Но результат больше 1.

Может кто-нибудь сказать мне, как получить значения CYMK в 0-1.

1 Ответ

1 голос
/ 06 декабря 2011

значения RGB находятся в диапазоне 0-255 чтобы получить этот диапазон между 0-1 вам нужно будет сделать:

ic[0].rgb.red = (255.0 / 255.0) << 8 ;
ic[0].rgb.green = (0 / 255.0);
ic[0].rgb.blue = (0 / 255.0);

в основном

value = value / max_range_of_value;

убедитесь, что используются переменные floats или decimals (или все, что поддерживает десятичные дроби).

...