Efeito de borda
Use o efeito de borda para estender uma imagem das bordas. Você pode usar esse efeito para repetir os pixels das bordas da imagem, encapsular os pixels da extremidade oposta da imagem ou espelhar os pixels na borda do bitmap para estender a região do bitmap.
O CLSID para esse efeito é CLSID_D2D1Border.
Imagens de exemplo
Os exemplos aqui mostram a saída do efeito de borda usando cada modo. O tamanho da saída é infinito, mas essas imagens de exemplo são cortadas para o dobro do tamanho.
Espelho
Antes |
---|
![]() |
Depois |
![]() |
Braçadeira
Antes |
---|
![]() |
Depois |
![]() |
Embrulhar
Antes |
---|
![]() |
Depois |
![]() |
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();
Propriedades de efeito
Nome de exibição e enumeração de índice | Descrição |
---|---|
Modo de Borda X D2D1_BORDER_PROP_EDGE_MODE_X |
O modo de borda na direção X para o efeito. Você pode definir isso como fixar, encapsular ou espelhar. Consulte modos de borda para obter mais informações. O tipo é D2D1_BORDER_EDGE_MODE. O valor padrão é D2D1_BORDER_EDGE_MODE_CLAMP. |
Modo de borda Y D2D1_BORDER_PROP_EDGE_MODE_Y |
O modo de borda na direção Y para o efeito. Você pode definir isso como fixar, encapsular ou espelhar. Consulte modos de borda para obter mais informações. O tipo é D2D1_BORDER_EDGE_MODE. O valor padrão é D2D1_BORDER_EDGE_MODE_CLAMP. |
Modos de borda
Nome de exibição e enumeração de índice | Descrição |
---|---|
Braçadeira D2D1_BORDER_EDGE_MODE_CLAMP |
Repete os pixels das bordas da imagem. |
Embrulhar D2D1_BORDER_EDGE_MODE_WRAP |
Usa pixels da borda de extremidade oposta da imagem. |
Espelho D2D1_BORDER_EDGE_MODE_MIRROR |
Reflete pixels sobre a borda da imagem. |
Bitmap de saída
O tamanho do bitmap de saída é infinito para todas as entradas, exceto uma imagem de entrada de tamanho 0. Se a altura ou a largura de uma imagem de entrada for 0, o tamanho da saída será 0.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8 e Platform Update para Windows 7 [aplicativos da área de trabalho | Aplicativos da Windows Store] |
Servidor mínimo com suporte | Windows 8 e Platform Update para Windows 7 [aplicativos da área de trabalho | Aplicativos da Windows Store] |
Cabeçalho | d2d1effects.h |
Biblioteca | d2d1.lib, dxguid.lib |