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


Эффект плаката

Эффект плакатизации уменьшает количество уникальных цветов на изображении.

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

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

пример выходных данных эффекта

Пример кода

ComPtr<ID2D1Effect> posterizeEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Posterize, &posterizeEffect);
 
posterizeEffect->SetInput(0, bitmap);
posterizeEffect->SetValue(D2D1_POSTERIZE_PROP_RED_VALUE_COUNT, 4);
posterizeEffect->SetValue(D2D1_POSTERIZE_PROP_GREEN_VALUE_COUNT, 4);
posterizeEffect->SetValue(D2D1_POSTERIZE_PROP_BLUE_VALUE_COUNT, 4);
 
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(posterizeEffect.Get());
m_d2dContext->EndDraw();


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

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

Требования

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