Rahmen-Effekt

Verwenden Sie den Rahmeneffekt, um ein Bild von den Rändern zu erweitern. Mit diesem Effekt können Sie die Pixel von den Rändern des Bilds wiederholen, die Pixel vom gegenüberliegenden Ende des Bilds umschließen oder die Pixel über den Bitmap-Rahmen spiegeln, um den Bitmapbereich zu erweitern.

Die CLSID für diesen Effekt ist CLSID _ D2D1Border.

Beispielbilder

Die Beispiele hier zeigen die Ausgabe des Rahmeneffekts mit jedem Modus. Die Ausgabegröße ist unendlich, aber diese Beispielbilder werden auf das Doppelte der Größe zugeschnitten.

Spiegel

Vorher
Screenshot, der das Bild vor dem Effekt zeigt.
Danach
Screenshot, der das Bild nach der Transformation zeigt.

Clamp

Vorher
Screenshot, der das Bild vor dem Effekt für eine Klammer zeigt.
Danach
Screenshot, der das Bild nach der Transformation für eine Klammer zeigt.

Umschließen

Vorher
Screenshot, der das Bild vor dem Effekt für einen Wrap zeigt.
Danach
Screenshot, der das Bild nach der Transformation für einen Wrap zeigt.
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(); 

Effect-Eigenschaften

Anzeigename und Indexenumeration BESCHREIBUNG
Edgemodus X
D2D1 _ BORDER _ PROP _ EDGE _ MODE _ X
Der Edgemodus in X-Richtung für den Effekt. Sie können dies auf "Klammern", "Umschließen" oder "Spiegel" festlegen. Weitere Informationen finden Sie unter Edgemodi.
Der Typ ist "D2D1 _ BORDER _ EDGE _ MODE".
Der Standardwert ist D2D1 _ BORDER _ EDGE MODE _ _ CLAMP.
Edgemodus Y
D2D1 _ BORDER _ PROP _ EDGE _ MODE _ Y
Der Edgemodus in Y-Richtung für den Effekt. Sie können dies auf "Klammern", "Umschließen" oder "Spiegel" festlegen. Weitere Informationen finden Sie unter Edgemodi.
Der Typ ist "D2D1 _ BORDER _ EDGE _ MODE".
Der Standardwert ist D2D1 _ BORDER _ EDGE MODE _ _ CLAMP.

Edgemodi

Anzeigename und Indexenumeration BESCHREIBUNG
Clamp
D2D1 _ BORDER _ EDGE _ MODE _ CLAMP
Wiederholt die Pixel von den Rändern des Bilds.
Umschließen
D2D1 _ BORDER _ EDGE _ MODE _ WRAP
Verwendet Pixel vom gegenüberliegenden Endrand des Bilds.
Spiegel
D2D1 _ BORDER _ EDGE _ MODE _ MIRROR
Spiegelt Pixel über den Rand des Bilds wider.

Ausgabebitmap

Die Ausgabebitmapgröße ist für alle Eingaben unendlich, mit Ausnahme eines Eingabebilds mit einer Größe von 0. Wenn die Höhe oder Breite eines Eingabebilds 0 beträgt, beträgt die Ausgabegröße 0.

Requirements (Anforderungen)

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 und Plattformupdate für Windows 7 [ Desktop-Apps | Windows Store Apps]
Unterstützte Mindestversion (Server) Windows 8 und Plattformupdate für Windows 7 [ Desktop-Apps | Windows Store Apps]
Header d2d1effects.h
Bibliothek d2d1.lib, dxguid.lib

ID2D1Effect