Partilhar via


Efeito de contraste

Aumenta ou diminui o contraste de uma imagem.

O CLSID para este efeito é CLSID_D2D1Contrast.

A função de contraste modifica cada valor de canal de cor usando dois polinômios quadráticos em partes que se encontram com a continuidade da inclinação no ponto (0,5, 0,5).

polinômios quadráticos fragmentados que se encontram com a continuidade da inclinação no ponto (0,5, 0,5)

Imagens de exemplo

Este exemplo mostra a saída do efeito com contraste máximo aplicado (Contraste = 1,0).

Antes

imagem antes que o efeito seja aplicado

Após

imagem após o efeito é aplicada

Código de exemplo

ComPtr<ID2D1Effect> contrastEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Contrast, &contrastEffect);
 
contrastEffect->SetInput(0, bitmap);
contrastEffect->SetValue(D2D1_CONTRAST_PROP_CONTRAST, 0.5f);
contrastEffect->SetValue(D2D1_CONTRAST_PROP_CLAMP_INPUT, TRUE);
 
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(contrastEffect.Get());
m_d2dContext->EndDraw();

Propriedades do efeito

As propriedades para o efeito de contraste são definidas pela enumeração D2D1_CONTRAST_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