Efeito de fronteira
Use o efeito de borda para estender uma imagem das bordas. Você pode usar esse efeito para repetir os pixels das bordas da imagem, envolver 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 este 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 |
---|
![]() |
Após |
![]() |
Braçadeira
Antes |
---|
![]() |
Após |
![]() |
Embrulho
Antes |
---|
![]() |
Após |
![]() |
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 do efeito
Nome para 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 grampo, embrulhar 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 Edge Y D2D1_BORDER_PROP_EDGE_MODE_Y |
O modo de borda na direção Y para o efeito. Você pode definir isso como grampo, embrulhar 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 para exibição e enumeração de índice | Descrição |
---|---|
Braçadeira D2D1_BORDER_EDGE_MODE_CLAMP |
Repete os pixels das bordas da imagem. |
Embrulho D2D1_BORDER_EDGE_MODE_WRAP |
Usa pixels da borda 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.
Requerimentos
Exigência | Valor |
---|---|
Cliente mínimo suportado | Windows 8 e Atualização da Plataforma para Windows 7 [aplicações de ambiente de trabalho | Aplicações da Loja Windows] |
Servidor mínimo suportado | Windows 8 e Atualização da Plataforma para Windows 7 [aplicações de ambiente de trabalho | Aplicações da Loja Windows] |
Cabeçalho | d2d1effects.h |
Biblioteca | d2d1.lib, dxguid.lib |