Partilhar via


Efeito RGB-to-hue

Converte uma imagem RGB nos espaços de cores HSL (Matiz, Saturação, Leveza) ou HSV (Matiz, Saturação, Valor).

HSL e HSV são dois modelos diferentes para representar uma cor RGB em um espaço de cor cilíndrico. Eles são úteis porque permitem raciocinar sobre uma cor usando conceitos mais intuitivos como matiz e intensidade versus combinar valores de vermelho, verde e azul.

Este efeito normaliza os dados de saída (matiz, valor de saturação para HSV ou matiz, saturação, leveza para HSL) para o intervalo [0, 1].

O CLSID para este efeito é CLSID_D2D1RgbToHue.

Para reverter o comportamento desse efeito, use o Hue para efeito RGB.

Código de exemplo

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();

Propriedades do efeito

As propriedades para o efeito de contraste são definidas pela enumeração D2D1_RGBTOHUE_PROP.

Requerimentos

Exigência Valor
Cliente mínimo suportado Windows 10 [aplicações de ambiente de trabalho | Aplicações da Loja Windows]
Servidor mínimo suportado Windows 10 [aplicações de ambiente de trabalho | Aplicações da Loja Windows]
Cabeçalho d2d1effects_2.h
Biblioteca d2d1.lib, dxguid.lib