Freigeben über


Rahmen-Effekt

Verwenden Sie den Rahmeneffekt, um ein Bild von den Rändern zu erweitern. Sie können diesen Effekt verwenden, um die Pixel von den Bildrändern zu wiederholen, die Pixel vom gegenüberliegenden Ende des Bilds umzuschließen oder die Pixel über den Bitmaprahmen zu Spiegel, um den Bitmapbereich zu erweitern.

Die CLSID für diesen Effekt ist CLSID_D2D1Border.

Beispielbilder

Die hier gezeigten Beispiele zeigen die Ausgabe des Rahmeneffekts unter Verwendung der einzelnen Modi. Die Ausgabegröße ist unendlich, aber diese Beispielbilder werden auf die doppelte Größe zugeschnitten.

Spiegel

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

Clamp

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

Umschließen

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

Effekteigenschaften

Anzeigename und Indexenumeration BESCHREIBUNG
Edgemodus X
D2D1_BORDER_PROP_EDGE_MODE_X
Der Kantenmodus in X-Richtung für den Effekt. Sie können dies so festlegen, dass sie klammern, umschließen oder Spiegel. 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 Kantenmodus in Y-Richtung für den Effekt. Sie können dies so festlegen, dass sie klammern, umschließen oder Spiegel. 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 Ende des Bilds.
Spiegel
D2D1_BORDER_EDGE_MODE_MIRROR
Gibt Pixel am Rand des Bilds an.

Ausgabebitbitbit

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

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