边框效果
使用边框效果从边缘扩展图像。 可以使用此效果来重复图像边缘的像素、从图像的相反端包装像素,或将像素镜像到位图边框以扩展位图区域。
此效果的 CLSID CLSID_D2D1Border。
示例图像
此处的示例显示了使用每个模式的边框效果的输出。 输出大小是无限的,但这些示例图像被裁剪为两倍的大小。
镜子
以前 |
---|
![]() |
后 |
![]() |
钳
以前 |
---|
![]() |
后 |
![]() |
包装
以前 |
---|
![]() |
后 |
![]() |
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。 |
边缘模式
显示名称和索引枚举 | 描述 |
---|---|
钳 D2D1_BORDER_EDGE_MODE_CLAMP |
从图像边缘重复像素。 |
包装 D2D1_BORDER_EDGE_MODE_WRAP |
使用图像的相反端边缘的像素。 |
镜子 D2D1_BORDER_EDGE_MODE_MIRROR |
反映图像边缘的像素。 |
输出位图
输出位图大小对于所有输入都是无限的,但输入图像的大小为 0。 如果输入图像的高度或宽度为 0,则输出大小为 0。
要求
要求 | 价值 |
---|---|
支持的最低客户端 | 适用于 Windows 7 的 Windows 8 和平台更新 [桌面应用 |Windows 应用商店应用] |
支持的最低服务器 | 适用于 Windows 7 的 Windows 8 和平台更新 [桌面应用 |Windows 应用商店应用] |
页眉 | d2d1effects.h |
图书馆 | d2d1.lib、dxguid.lib |