Светимость к альфа-эффекту
Используйте сияние для альфа-эффекта, чтобы задать альфа-канал на свет изображения и задать цветовые каналы равным 0. Вы можете использовать выходные данные этого эффекта, чтобы сделать полутранспарентное наложение на основе яркости входного изображения. Кроме того, вы можете использовать его для маски изображения.
Заметка
Этот эффект не имеет свойств.
CLSID для этого эффекта CLSID_D2D1LuminanceToAlpha.
Пример изображения
В этом примере показаны выходные данные светимости альфа-эффекта, составного над белой поверхностью, чтобы показать непрозрачность.
Перед |
---|
![]() |
После |
![]() |
ComPtr<ID2D1Effect> luminanceToAlphaEffect;
m_d2dContext->CreateEffect(CLSID_D2D1LuminanceToAlpha, &luminanceToAlphaEffect);
luminanceToAlphaEffect->SetInput(0, bitmap);
// LuminanceToAlpha result is composited on top of a white surface to show opacity.
ComPtr<ID2D1Effect> floodEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Flood, &floodEffect);
floodEffect->SetValue(D2D1_FLOOD_PROP_COLOR, D2D1::Vector4F(1.0f, 1.0f, 1.0f, 1.0f));
ComPtr<ID2D1Effect> compositeEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Composite, &compositeEffect);
compositeEffect->SetInputEffect(0, floodEffect.Get());
compositeEffect->SetInputEffect(1, luminanceToAlphaEffect.Get());
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(compositeEffect.Get());
m_d2dContext->EndDraw();
Этот эффект задает альфа-канал выходных данных для яркости входного изображения с помощью этой цветовой матрицы.
Этот эффект использует и выводит предварительно подготовленные альфа-изображения. Эффект не будет работать на прямых альфа-изображениях, если они не полностью непрозрачны.
Заметка
Так как изображения хранятся в гамма-компенсированном формате, прежде чем вычислить светимость изображения, необходимо сначала выполнить обратную гамма-коррекцию, чтобы получить истинные значения цвета для изображения. Так как изображения обычно хранятся в гамма-2,2, можно использовать эффект передачи гамма с экспонентом (1/2.2), а затем использовать выходные данные этого эффекта.
Требования
Требование | Ценность |
---|---|
Минимальный поддерживаемый клиент | Windows 8 и Обновление платформы для Windows 7 [классические приложения | Приложения Магазина Windows] |
Минимальный поддерживаемый сервер | Windows 8 и Обновление платформы для Windows 7 [классические приложения | Приложения Магазина Windows] |
Заголовок | d2d1effects.h |
Библиотека | d2d1.lib, dxguid.lib |
Выходной растровый рисунок
Выходные данные совпадают с размером входного изображения.
Связанные разделы