Effet de bordure
Utilisez l’effet de bordure pour étendre une image à partir des bords. Vous pouvez utiliser cet effet pour répéter les pixels des bords de l’image, encapsuler les pixels de l’extrémité opposée de l’image ou miroir les pixels sur la bordure de la bitmap pour étendre la zone bitmap.
Le CLSID de cet effet est CLSID_D2D1Border.
Exemples d’images
Les exemples ci-dessous montrent la sortie de l’effet de bordure à l’aide de chaque mode. La taille de sortie est infinie, mais ces exemples d’images sont rognées à deux fois la taille.
Miroir
Avant |
---|
After |
Clamp
Avant |
---|
After |
Encapsuler
Avant |
---|
After |
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();
Propriétés de l’effet
Nom complet et énumération d’index | Description |
---|---|
Edge Mode X D2D1_BORDER_PROP_EDGE_MODE_X |
Mode arête dans la direction X pour l’effet. Vous pouvez le définir sur serrer, envelopper ou miroir. Pour plus d’informations, consultez Modes Edge . Le type est D2D1_BORDER_EDGE_MODE. La valeur par défaut est D2D1_BORDER_EDGE_MODE_CLAMP. |
Edge Mode Y D2D1_BORDER_PROP_EDGE_MODE_Y |
Mode arête dans la direction Y de l’effet. Vous pouvez le définir sur serrer, envelopper ou miroir. Pour plus d’informations, consultez Modes Edge . Le type est D2D1_BORDER_EDGE_MODE. La valeur par défaut est D2D1_BORDER_EDGE_MODE_CLAMP. |
Modes Edge
Nom complet et énumération d’index | Description |
---|---|
Clamp D2D1_BORDER_EDGE_MODE_CLAMP |
Répète les pixels des bords de l’image. |
Encapsuler D2D1_BORDER_EDGE_MODE_WRAP |
Utilise des pixels du bord d’extrémité opposé de l’image. |
Miroir D2D1_BORDER_EDGE_MODE_MIRROR |
Reflète les pixels sur le bord de l’image. |
Bitmap de sortie
La taille de l’image bitmap de sortie est infinie pour toutes les entrées, à l’exception d’une image d’entrée de taille 0. Si la hauteur ou la largeur d’une image d’entrée est 0, la taille de sortie est 0.
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 et mise à jour de plateforme pour Windows 7 [applications de bureau | Applications du Windows Store] |
Serveur minimal pris en charge | Windows 8 et mise à jour de plateforme pour Windows 7 [applications de bureau | Applications du Windows Store] |
En-tête | d2d1effects.h |
Bibliothèque | d2d1.lib, dxguid.lib |