Partager via


Effet rognage

Utilisez l’effet rognage pour générer une région spécifiée d’une image.

Le CLSID de cet effet est CLSID_D2D1Crop.

Exemple d’image

Avant
image avant l’effet.
Après
image après la transformation.
ComPtr<ID2D1Effect> cropEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Crop, &cropEffect);

cropEffect->SetInput(0, bitmap);
cropEffect->SetValue(D2D1_CROP_PROP_RECT, D2D1::RectF(0.0f, 0.0f, 256.0f, 192.0f));

m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(cropEffect.Get());
m_d2dContext->EndDraw();

Propriétés d’effet

Nom d’affichage et énumération d’index Type et valeur par défaut Description
Rect
D2D1_VECTOR_4F
Région à rogner spécifiée sous forme de vecteur (gauche, haut, largeur, hauteur).
D2D1_CROP_PROP_RECT
{-FLT_MAX, -FLT_MAX, FLT_MAX, FLT_MAX}
Les unités sont en DIPs.
Remarque :
Le rect est tronqué s’il chevauche les limites de bord de l’image d’entrée.
D2D1_CROP_PROP_BORDER_MODE
D2D1_BORDER_MODE
D2D1_BORDER_MODE_SOFT
  • D2D1_BORDER_MODE_SOFT : si le rectangle de rognage tombe sur des coordonnées de pixels fractionnaires, l’effet applique un anti-attirail qui se traduit par un bord souple.
  • D2D1_BORDER_MODE_HARD : si le rectangle de rognage tombe sur des coordonnées fractionnaires de pixels, l’effet se serre, ce qui se traduit par un bord dur.

Bitmap de sortie

La sortie de cet effet est la taille de la propriété Rect. La longueur et la largeur sont calcales

ulated à l’aide des équations ici :

Longueur de sortie en Pixels=(Rect.Right-Rect.Left)*(DPI de l’utilisateur/96)
Hauteur de sortie en pixels=(Rect.Bottom-Rect.Top)*(DPI de l’utilisateur/96)

Configuration requise

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

ID2D1Effect