DPI-Kompensationseffekt

Verwenden Sie den DPI-Kompensationseffekt, um eine Eingabebit automatisch an die DPI des Kontexts anzupassen. Dies ist nützlich für Situationen, in denen eine Bitmap mit einem anderen DPI-Wert als der Bildschirm erstellt oder geladen wird.

Die CLSID für diesen Effekt ist CLSID_D2D1DpiCompensation.

Effekteigenschaften

Anzeigename und Indexenumeration Beschreibung
Interpolationmode
D2D1_DPICOMPENSATION_PROP_INTERPOLATION_MODE
Der Interpolationsmodus, den der Effekt zum Skalieren des Bilds verwendet.
Der Typ ist D2D1_DPICOMPENSATION_INTERPOLATION_MODE.
Der Standardwert ist D2D1_DPICOMPENSATION_INTERPOLATION_MODE_LINEAR .
BorderMode
D2D1_DPICOMPENSATION_PROP_BORDER_MODE
Der Modus, der verwendet wird, um den Rahmen des Bilds zu berechnen, weich oder hart. Weitere Informationen finden Sie unter Rahmenmodi .
Der Typ ist D2D1_BORDER_MODE.
Der Standardwert ist D2D1_BORDER_MODE_SOFT.
InputDpi
D2D1_DPICOMPENSATION_PROP_INPUT_DPI
Der DPI-Wert des Eingabebilds.
Der Typ ist FLOAT.
Der Standardwert ist 96,0f.

Interpolationsmodi

Enumeration Beschreibung
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_NEAREST_NEIGHBOR Beispiele für den nächsten einzelnen Punkt und verwenden diesen. Dieser Modus verwendet weniger Verarbeitungszeit, gibt jedoch das Bild mit der niedrigsten Qualität aus.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_LINEAR Verwendet ein Vier-Punkt-Beispiel und eine lineare Interpolation. Dieser Modus verwendet mehr Verarbeitungszeit als der nächste Nachbarmodus, gibt jedoch ein Bild mit höherer Qualität aus.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_CUBIC Verwendet einen Kubikkern mit 16 Beispielen für die Interpolation. Dieser Modus verwendet die meiste Verarbeitungszeit, gibt jedoch ein Bild mit höherer Qualität aus.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR Verwendet 4 lineare Beispiele innerhalb eines einzelnen Pixels für gutes Antialiasing von Kanten. Dieser Modus eignet sich gut für das Herunterskalieren von kleinen Mengen auf Bildern mit wenigen Pixeln.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_ANISOTROPIC Verwendet die anisotrope Filterung, um ein Muster entsprechend der transformierten Form der Bitmap zu ermitteln.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC Verwendet einen Kubikkern mit variabler Größe hoher Qualität, um eine Vorabskalierung des Bilds durchzuführen, wenn eine Downskalierung in die Transformationsmatrix einbezogen wird. Verwendet dann den kubischen Interpolationsmodus für die endgültige Ausgabe.

Hinweis

Wenn Sie keinen Modus auswählen, wird der Effekt standardmäßig auf D2D1_DPICOMPENSTION_INTERPOLATION_MODE_LINEAR.

Rahmenmodi

Name Beschreibung
D2D1_BORDER_MODE_SOFT Pixel außerhalb der Eingabegrenzen werden durch den Spiegel Rahmeneffekt generiert.
D2D1_BORDER_MODE_HARD Pixel außerhalb der Eingabegrenzen sind transparent schwarz.

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