Поделиться через


Эффект rgb-to-hue

Преобразует изображение RGB в цветовое пространство HSL (Hue, Saturation, Lightness) или HSV (Hue, Saturation, Value).

HSL и HSV — это две разные модели для представления цвета RGB в цилиндрическом цветовом пространстве. Они полезны, поскольку позволяют рассуждать о цвете, используя более интуитивно понятные понятия, такие как оттенок и интенсивность, а не сочетание красных, зеленых и синих значений.

Этот эффект нормализует выходные данные (оттенок, значение насыщенности для HSV или оттенок, насыщенность, легкость для HSL) до диапазона [0, 1].

CLSID для этого эффекта CLSID_D2D1RgbToHue.

Чтобы изменить поведение этого эффекта, используйте эффект Hue to RGB.

Образец кода

ComPtr<ID2D1Effect> rgbToHueEffect;
m_d2dContext->CreateEffect(CLSID_D2D1RgbToHue, &rgbToHueEffect);
 
rgbToHueEffect->SetInput(0, bitmap);
rgbToHueEffect->SetValue(D2D1_RGBTOHUE_PROP_OUTPUT_COLOR_SPACE, D2D1_RGBTOHUE_OUTPUT_COLOR_SPACE_HUE_SATURATION_VALUE);
 
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(rgbToHueEffect.Get());
m_d2dContext->EndDraw();

Свойства эффекта

Свойства для эффекта контрастности определяются перечислением D2D1_RGBTOHUE_PROP .

Требования

Требование Значение
Минимальная версия клиента Windows 10 [классические приложения | Приложения Магазина Windows]
Минимальная версия сервера Windows 10 [классические приложения | Приложения Магазина Windows]
Заголовок d2d1effects_2.h
Библиотека d2d1.lib, dxguid.lib