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


Эффект насыщенности

Используйте этот эффект для изменения насыщенности изображения. Эффект насыщенности является специализацией эффекта цветовой матрицы .

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

Пример изображения

В приведенном здесь примере показаны входные и выходные изображения эффекта насыщенности с насыщенностью 0 %.

До
изображение перед эффектом.
После
изображение после преобразования.
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();

Эффект вычисляет цветовую матрицу на основе значения насыщенности приведенном здесь уравнении), указанного с помощью свойства D2D1_SATURATION_PROP_SATURATION. Здесь показано матричное уравнение.

формула для вычисления матрицы насыщенности.

Созданная матрица зависит только от значения насыщенности. Если требуется определенная матрица, можно использовать эффект цветовой матрицы .

Этот эффект использует и выводит предварительно подготовленные альфа-изображения. Эффект не будет работать на прямых альфа-изображениях, если они не являются полностью непрозрачными.

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

Отображаемое перечисление имен и индексов Тип и значение по умолчанию Описание
Насыщенность
D2D1_SATURATION_PROP_SATURATION
FLOAT
0.5f
Насыщенность изображения. Для насыщенности можно задать значение от 0 до 1. Если задать значение 1, выходное изображение будет полностью насыщенным. Если задать для него значение 0, выходное изображение будет монохромным. Значение насыщенности является неунитарным.

Требования

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

ID2D1Effect