Condividi tramite


Effetto bordo

Usare l'effetto bordo per estendere un'immagine dai bordi. È possibile usare questo effetto per ripetere i pixel dai bordi dell'immagine, eseguire il wrapping dei pixel dalla fine opposta dell'immagine o eseguire il mirroring dei pixel attraverso il bordo bitmap per estendere l'area bitmap.

Il CLSID per questo effetto è CLSID_D2D1Border.

Immagini di esempio

Gli esempi qui mostrano l'output dell'effetto bordo usando ogni modalità. Le dimensioni dell'output sono infinite, ma queste immagini di esempio vengono ritagliate al doppio delle dimensioni.

Mirror

Prima
Screenshot che mostra l'immagine prima dell'effetto.
After
Screenshot che mostra l'immagine dopo la trasformazione.

Clamp

Prima
Screenshot che mostra l'immagine prima dell'effetto per un blocco.
After
Screenshot che mostra l'immagine dopo la trasformazione per un blocco.

Wrap

Prima
Screenshot che mostra l'immagine prima dell'effetto per un ritorno a capo.
After
Screenshot che mostra l'immagine dopo la trasformazione per un ritorno a capo.
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(); 

Proprietà dell'effetto

Enumerazione nome visualizzato e indice Descrizione
Modalità edge X
D2D1_BORDER_PROP_EDGE_MODE_X
Modalità bordo nella direzione X per l'effetto. È possibile impostare questa opzione su blocca, avvolgere o eseguire il mirroring. Per altre informazioni, vedi Modalità Edge .
Il tipo è D2D1_BORDER_EDGE_MODE.
Il valore predefinito è D2D1_BORDER_EDGE_MODE_CLAMP.
Modalità Edge Y
D2D1_BORDER_PROP_EDGE_MODE_Y
Modalità bordo nella direzione Y per l'effetto. È possibile impostare questa opzione su blocca, avvolgere o eseguire il mirroring. Per altre informazioni, vedi Modalità Edge .
Il tipo è D2D1_BORDER_EDGE_MODE.
Il valore predefinito è D2D1_BORDER_EDGE_MODE_CLAMP.

Modalità perimetrale

Enumerazione nome visualizzato e indice Descrizione
Clamp
D2D1_BORDER_EDGE_MODE_CLAMP
Ripete i pixel dai bordi dell'immagine.
Wrap
D2D1_BORDER_EDGE_MODE_WRAP
Usa i pixel dal bordo finale opposto dell'immagine.
Mirror
D2D1_BORDER_EDGE_MODE_MIRROR
Riflette i pixel sul bordo dell'immagine.

Bitmap di output

Le dimensioni della bitmap di output sono infinite per tutti gli input, ad eccezione di un'immagine di input di dimensioni 0. Se l'altezza o la larghezza di un'immagine di input è 0, la dimensione dell'output è 0.

Requisiti

Requisito Valore
Client minimo supportato Windows 8 e aggiornamento della piattaforma per Windows 7 [app desktop | App di Windows Store]
Server minimo supportato Windows 8 e aggiornamento della piattaforma per Windows 7 [app desktop | App di Windows Store]
Intestazione d2d1effects.h
Libreria d2d1.lib, dxguid.lib

ID2D1Effect