Цветовые модели используется диалоговое окно "цвет"

Пользовательские цвета расширение диалогового окна Цвет позволяет пользователю указать цвет с помощью значения HSL или RGB. Однако CHOOSECOLOR структура использует только значения RGB сообщить цветов созданы или выбранный пользователем.

Цветовая модель RGB

Модель RGB используется для обозначения цветов для дисплеев и других устройств, которые излучают свет. Диапазон допустимых значений красного, зеленого и синего от 0 до 255, где 0, указывающее, Минимальная интенсивность и 255, указывающее максимальную интенсивность. На следующем рисунке показано, как можно объединить основных цветов: красного, зеленого и синего для создания четырех дополнительных цветов. (Для устройств отображения, черный цвет приводит, когда значения красного, зеленого и синего имеют значение 0. В технологии отображения черный является отсутствие всех цветов.)

Ниже перечислены восемь цветов и связанных с ними значений RGB.

Цвет Значения RGB
Красный 255, 0, 0
Грин 0, 255, 0
Синий 0, 0, 255
Голубой 0, 255, 255
Пурпурный 255, 0, 255
Жёлтый 255, 255, 0
Уайт 255, 255, 255
Черный 0, 0, 0

Система сохраняет внутренние цвета как 32-разрядных RGB-значения, которые имеют следующие шестнадцатеричную форму:

0x00bbggrr 
 

Младший байт содержит значение для относительной интенсивности Красного; второй байт содержит значение для зеленого; и третий байт содержит значение для синего. Старший байт должен быть равен нулю.

Вы можете использовать RGB макрос для того чтобы получить значение RGB на основе указанного интенсивности для красного, зеленого и синего компонентов. Использование GetRValue GetBValueи GetGValue макросы для извлечения отдельных цветов из RGB значение цвета.

Цветовая модель HSL

Диалоговое окно предоставляет элементы управления для указания значения HSL. На следующем рисунке показано цветовой спектр светимость слайд управления и которые появляются в диалоговом окне Цвет . На рисунке показаны диапазоны значений, пользователь может указать с этими элементами управления.

В диалоговом окне Цвет насыщенность и яркость значения должны быть в диапазоне от 0 до 240 и оттенок значение должно быть в диапазоне от 0 до 239.

Преобразование значения HSL в значения RGB

Процедуру диалогового окна в COMDLG32.Библиотека DLL для диалогового окна Цвет содержится код, который преобразует значения HSL соответствующие значения RGB. Ниже приведены несколько цветов и их связанные значения HSL и RGB.

Цвет Значения HSL Значения RGB
Красный (0, 240, 120) (255, 0, 0)
Жёлтый (40, 240, 120) (255, 255, 0)
Грин (80, 240, 120) (0, 255, 0)
Голубой (120, 240, 120) (0, 255, 255)
Синий (160, 240, 120) (0, 0, 255)
Пурпурный (200, 240, 120) (255, 0, 255)
Уайт (0, 0, 240) (255, 255, 255)
Черный (0, 0, 0) (0, 0, 0)

Index