Прочитать на английском

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


Пограничный эффект

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

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

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

В приведенных здесь примерах показаны выходные данные эффекта границы с использованием каждого режима. Размер выходных данных бесконечен, но эти примеры изображений обрезаются в два раза больше.

Зеркальное отображение

До
Снимок экрана: изображение перед эффектом.
После
Снимок экрана: изображение после преобразования.

Clamp

До
Снимок экрана: изображение перед эффектом для зажима.
После
Снимок экрана: изображение после преобразования для зажима.

оборачивание;

До
Снимок экрана: изображение перед эффектом переноса.
После
Снимок экрана: изображение после преобразования для переноса.
ComPtr<ID2D1Effect> borderEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Border, &borderEffect);

borderEffect->SetInput(0, bitmap);
borderEffect->SetValue(D2D1_BORDER_PROP_EDGE_MODE_X, D2D1_BORDER_EDGE_MODE_MIRROR);
borderEffect->SetValue(D2D1_BORDER_PROP_EDGE_MODE_Y, D2D1_BORDER_EDGE_MODE_MIRROR);

m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(borderEffect.Get());
m_d2dContext->EndDraw(); 

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

Отображаемое перечисление имен и индексов Описание
Пограничный режим X
D2D1_BORDER_PROP_EDGE_MODE_X
Режим ребра в направлении X для эффекта. Для этого параметра можно задать зажим, перенос или зеркало. Дополнительные сведения см. в разделе Режимы Edge .
Тип — D2D1_BORDER_EDGE_MODE.
Значение по умолчанию — D2D1_BORDER_EDGE_MODE_CLAMP.
Пограничный режим Y
D2D1_BORDER_PROP_EDGE_MODE_Y
Режим ребра в направлении Y для эффекта. Для этого параметра можно задать зажим, перенос или зеркало. Дополнительные сведения см. в разделе Режимы Edge .
Тип — D2D1_BORDER_EDGE_MODE.
Значение по умолчанию — D2D1_BORDER_EDGE_MODE_CLAMP.

Режимы пограничных вычислений

Отображаемое перечисление имен и индексов Описание
Clamp
D2D1_BORDER_EDGE_MODE_CLAMP
Повторяет пиксели от краев изображения.
оборачивание;
D2D1_BORDER_EDGE_MODE_WRAP
Использует пиксели от противоположного края изображения.
Зеркальное отображение
D2D1_BORDER_EDGE_MODE_MIRROR
Отражает пиксели на краю изображения.

Выходное растровое изображение

Размер выходного растрового изображения не ограничен для всех входных данных, за исключением входного изображения размером 0. Если высота или ширина входного изображения равна 0, размер выходных данных равен 0.

Требования

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

ID2D1Effect