Freigeben über


Zuschneideeffekt

Verwenden Sie den Zuschneideeffekt, um einen bestimmten Bereich eines Bilds auszugeben.

Die CLSID für diesen Effekt ist CLSID_D2D1Crop.

Beispielbild

Vor
das Bild vor dem Effekt.
Nach
das Bild nach der 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();

Effekteigenschaften

Anzeigename und Indexenumeration Typ und Standardwert Beschreibung
Rect
D2D1_VECTOR_4F
Der bereich, der als Vektor im Formular angegeben werden soll (links, oben, Breite, Höhe).
D2D1_CROP_PROP_RECT
{-FLT_MAX, -FLT_MAX, FLT_MAX, FLT_MAX}
Die Einheiten befinden sich in DIPs.
Hinweis:
Das Rect wird abgeschnitten, wenn es die Randgrenzen des Eingabebilds überlappt.
D2D1_CROP_PROP_BORDER_MODE
D2D1_BORDER_MODE
D2D1_BORDER_MODE_SOFT
  • D2D1_BORDER_MODE_SOFT: Wenn das Zuschneiderechteck auf Bruchpixelkoordinaten fällt, wendet der Effekt Antialiasing an, was zu einem weichen Rand führt.
  • D2D1_BORDER_MODE_HARD: Wenn das Zuschneiderechteck auf Bruchpixelkoordinaten fällt, klammert der Effekt, der zu einer harten Kante führt.

Ausgabebitmap

Die Ausgabe dieses Effekts ist die Größe der Rect-Eigenschaft. Die Länge und Breite werden berechnet.

die Formeln werden hier unter Verwendung der folgenden Formeln verwendet:

Ausgabelänge in Pixels=(Rect.Right-Rect.Left)*(DPI/96 des Benutzers)
Ausgabehöhe in Pixel=(Rect.Bottom-Rect.Top)*(DPI/96 des Benutzers)

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | Windows Store-Apps]
Mindestens unterstützter Server Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | Windows Store-Apps]
Kopfball d2d1effects.h
Bibliothek d2d1.lib, dxguid.lib

ID2D1Effect-