Efeito de saturação
Use este efeito para alterar a saturação de uma imagem. O efeito de saturação é uma especialização da matriz de cores efeito.
O CLSID para este efeito é CLSID_D2D1Saturation.
Imagem de exemplo
O exemplo aqui mostra as imagens de entrada e saída do efeito de saturação com uma saturação de 0%.
Antes |
---|
![]() |
Após |
![]() |
ComPtr<ID2D1Effect> saturationEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Saturation, &saturationEffect);
saturationEffect->SetInput(0, bitmap);
saturationEffect->SetValue(D2D1_SATURATION_PROP_SATURATION, 0.0f);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(saturationEffect.Get());
m_d2dContext->EndDraw();
O efeito calcula uma matriz de cores com base no valor de saturação (s na equação aqui) especificado com a propriedade D2D1_SATURATION_PROP_SATURATION. A equação matricial é mostrada aqui.
A matriz criada depende apenas do valor de saturação. Você pode usar a matriz de cores efeito se precisar de uma matriz específica.
Este efeito consome e produz imagens alfa pré-multiplicadas. O efeito não funcionará em imagens alfa retas, a menos que elas sejam totalmente opacas.
Propriedades do efeito
Nome para exibição e enumeração de índice | Tipo e valor padrão | Descrição |
---|---|---|
Saturação D2D1_SATURATION_PROP_SATURATION |
FLUTUAR 0.5f |
A saturação da imagem. Você pode definir a saturação para um valor entre 0 e 1. Se você defini-lo como 1, a imagem de saída estará totalmente saturada. Se você defini-lo como 0, a imagem de saída será monocromática. O valor de saturação é sem unidade. |
Requerimentos
Exigência | Valor |
---|---|
Cliente mínimo suportado | Windows 8 e Atualização da Plataforma para Windows 7 [aplicações de ambiente de trabalho | Aplicações da Loja Windows] |
Servidor mínimo suportado | Windows 8 e Atualização da Plataforma para Windows 7 [aplicações de ambiente de trabalho | Aplicações da Loja Windows] |
Cabeçalho | d2d1effects.h |
Biblioteca | d2d1.lib, dxguid.lib |