Compartilhar via


Efeito RGB para matiz

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 cores cilíndrico. Eles são úteis porque permitem que você raciocinar sobre uma cor usando conceitos mais intuitivos, como matiz e intensidade, em vez de combinar valores vermelhos, verdes e azuis.

Esse 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 esse efeito é CLSID_D2D1RgbToHue.

Para reverter o comportamento desse efeito, use o efeito Hue para 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 do efeito de contraste são definidas pela enumeração D2D1_RGBTOHUE_PROP .

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10 [aplicativos da área de trabalho | Aplicativos da Windows Store]
Servidor mínimo com suporte Windows 10 [aplicativos da área de trabalho | Aplicativos da Windows Store]
Cabeçalho d2d1effects_2.h
Biblioteca d2d1.lib, dxguid.lib