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


Эффект контрастности

Увеличивает или уменьшает контрастность изображения.

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

Функция контрастности изменяет каждое значение канала цвета с помощью двух кусков с кусочной квадратикой полиномиал, которые соответствуют непрерывности наклона в точке (0,5, 0,5).

квадровые многономиалы, которые соответствуют непрерывности наклонов в точке (0,5, 0,5)

Примеры изображений

В этом примере показаны выходные данные эффекта с максимальной контрастностью (Контраст = 1.0).

Перед

изображения перед применением эффекта

После

изображение после применения эффекта

Пример кода

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

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

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

Требования

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