Farbverwaltungseffekt

Verwenden Sie den Farbverwaltungseffekt, um ein Bild von einem COLOR-Farbprofil (International Color Consortium) in ein anderes zu transformieren. Der Effekt transformiert das Bild gemäß der ZIP-Spezifikation.

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

Effekteigenschaften

Anzeigename und Indexenumeration BESCHREIBUNG
SourceContext
D2D1 _ COLORMANAGEMENT _ PROP _ SOURCE _ COLOR _ CONTEXT
Die Quellfarbrauminformationen. Der Typ ist ID2D1ColorContext.
Der Standardwert ist NULL.
SourceIntent
D2D1 _ COLORMANAGEMENT _ PROP _ SOURCE _ RENDERING _ INTENT
Die zu verwendende RENDERabsicht FÜR DAS RENDERING. Der Typ ist D2D1 _ COLORMANAGEMENT _ RENDERING _ INTENT.
Der Standardwert ist D2D1 _ COLORMANAGEMENT _ RENDERING INTENT _ _ PERCEPTUAL.
DestinationContext
D2D1 _ COLORMANAGEMENT _ PROP _ DESTINATION _ COLOR _ CONTEXT
Die Zielfarbrauminformationen. Der Typ ist ID2D1ColorContext.
Der Standardwert ist NULL.
DestinationIntent
D2D1 _ COLORMANAGEMENT _ PROP _ DESTINATION _ RENDERING _ INTENT
Die zu verwendende RENDERabsicht FÜR DAS RENDERING. Der Typ ist D2D1 _ COLORMANAGEMENT _ RENDERING _ INTENT.
Der Standardwert ist D2D1 _ COLORMANAGEMENT _ RENDERING INTENT _ _ PERCEPTUAL.
AlphaMode
D2D1 _ COLORMANAGEMENT _ PROP _ ALPHA _ MODE
Interpretieren von Alphadaten, die im Eingabebild enthalten sind. Der Typ ist D2D1 _ COLORMANAGEMENT _ ALPHA _ MODE.
Der Standardwert ist D2D1 _ COLORMANAGEMENT _ ALPHA MODE _ _ PREMULTIPLIED.
Qualität
D2D1 _ COLORMANAGEMENT _ PROP _ QUALITY
Die Qualitätsstufe der Transformation. Der Typ ist D2D1 _ COLORMANAGEMENT _ QUALITY.
Der Standardwert ist D2D1 _ COLORMANAGEMENT _ QUALITY _ NORMAL.

Renderingabsichtsmodi

Enumeration Beschreibung
D2D1 _ COLORMANAGEMENT _ RENDERING _ INTENT _ PERCEPTUAL Der Effekt komprimiert oder erweitert die vollfarbige Farbpalette des Bilds, um die Farbpalette des Geräts zu füllen, sodass der Grauabgleich beibehalten wird, aber die farbliche Genauigkeit möglicherweise nicht beibehalten wird.
D2D1 _ COLORMANAGEMENT _ RENDERING _ INTENT _ RELATIVE _ COLORIMETRIC Der Effekt behält den Farbton im Bild auf mögliche Kosten von Farbton und Helligkeit bei.
D2D1 _ COLORMANAGEMENT _ RENDERING _ INTENT _ SATURATION Der Effekt passt Farben, die außerhalb des Farbbereichs liegen, den das Ausgabegerät rendert, an die nächste verfügbare Farbe an. Der weiße Punkt wird nicht beibehalten.
D2D1 _ COLORMANAGEMENT _ RENDERING _ INTENT _ ABSOLUTE _ COLORIMETRIC Der Effekt passt alle Farben, die außerhalb des Bereichs liegen, den das Ausgabegerät rendern kann, an die nächstgelegene Farbe an, die gerendert werden kann. Der Effekt ändert nicht die anderen Farben und behält den weißen Punkt bei.

Alphamodi für Eingabebilder

Enumeration Beschreibung
D2D1 _ COLORMANAGEMENT _ ALPHA _ MODE _ PREMULTIPLIED Der Effekt setzt voraus, dass der Alphamodus prämultipliziert ist.
D2D1 _ COLORMANAGEMENT _ ALPHA _ MODE _ STRAIGHT Der Effekt geht davon aus, dass der Alphamodus gerade ist.

D2D1_GAMMA1_G2084 Verhaltensänderungen

Wenn Ihre Anwendung den D2D1_GAMMA1_G2084 Bereich oder einen der DXGI_COLOR_SPACE_TYPE Enumerationswerte verwendet, die den Farbraum SMPTE ST.2084 (Perceptual Quantizer) verwenden, beabsichtigt die Anwendung, mit HDR-Daten zu arbeiten.

Die APIs ID2D1DeviceContext5::CreateColorContextFromSimpleColorProfile und ID2D1DeviceContext5::CreateColorContextFromDxgiColorSpace berücksichtigen dies nicht. Stattdessen wird der HDR-Inhalt während des G2084 DeGamma-Vorgangs so skaliert, dass er in den Bereich von 0 bis 1 passt.

In der Praxis verwendet Inhalt, der in diesem Gammabereich codiert ist, einen WhiteLevel-Verweis von 10.000 Nits, der normalerweise in BLES als 10.000 /80 = 125,0 dargestellt wird. Um Ihre App besser zu vereinfachen, ist es für diese Gammakonvertierung am einfachsten, auch die Leuchtdichte um den Faktor 125 zu skalieren. Ab Windows 10, Version 1809 (10.0; Build 17763): Das Verhalten des Farbverwaltungseffekts ist so, dass diese Skalierung angewendet wird. Das bedeutet, dass Sie als Entwickler keinen zweiten White Level-Anpassungseffekt auf die Pipeline anwenden müssen.

Compliance mit DER COMPLIANCE-Spezifikation

Der Farbverwaltungseffekt ist mit der SPEZIFIKATION VON CAB v4.3 konform und hat folgende Einschränkungen:

  • Der Effekt unterstützt 1, 3 und 4 Kanalfarbräume.
  • Der Effekt unterstützt keine ColorSpace- oder Named Color-Profile.

Alphakanalverhalten

Im Allgemeinen legt der Effekt alpha auf 1 (nicht transparent) fest, wenn keine Alphadaten im Quellbild vorhanden sind, und die Alphadaten verworfen werden, wenn kein Raum im Zielbild vorhanden ist. In der folgenden Tabelle wird das Alphaverhalten beschrieben.

Quellfarbraum, Pixelformat Zielfarbraum, Pixelformat Alphaverhalten
1 Kanal, R-Pixelformat ${REMOVE}$
1 Kanal, R-Pixelformat (Keine Alphadaten)
1 Kanal, RGBA-Pixelformat Alphadaten sind auf 1 festgelegt (nicht transparent)
3 Kanal, RGBA-Pixelformat Alphadaten sind auf 1 festgelegt (nicht transparent)
4 Kanal, RGBA-Pixelformat (Keine Alphadaten)
1 Kanal, RGBA-Pixelformat ${REMOVE}$
1 Kanal, R-Pixelformat Alphadaten werden verworfen.
1 Kanal, RGBA-Pixelformat Alphadaten werden übergeben
3 Kanal, RGBA-Pixelformat Alphadaten werden übergeben
4 Kanal, RGBA-Pixelformat Alphadaten werden verworfen
3 Kanal, RGBA-Pixelformat ${REMOVE}$
1 Kanal, R-Pixelformat Alphadaten werden verworfen
1 Kanal, RGBA-Pixelformat Alphadaten werden übergeben
3 Kanal, RGBA-Pixelformat Alphadaten werden übergeben
4 Kanal, RGBA-Pixelformat Alphadaten werden verworfen
4 Kanal, RGBA-Pixelformat ${REMOVE}$
1 Kanal, R-Pixelformat (Keine Alphadaten)
1 Kanal, RGBA-Pixelformat Alphadaten sind auf 1 (nicht transparent) festgelegt.
3 Kanal, RGBA-Pixelformat Alphadaten sind auf 1 (nicht transparent) festgelegt.
4 Kanal, RGBA-Pixelformat (Keine Alphadaten)

Qualitätsmodi

Mode BESCHREIBUNG
D2D1 _ COLORMANAGEMENT _ QUALITY _ PROOF Der Modus mit der niedrigsten Qualität. Für diesen Modus ist die Funktionsebene 9 _ 1 oder höher erforderlich.
D2D1 _ COLORMANAGEMENT _ QUALITY _ NORMAL Normaler Qualitätsmodus. Für diesen Modus ist die Funktionsebene 9 _ 1 oder höher erforderlich.
D2D1 _ COLORMANAGEMENT _ QUALITY _ BEST Der Modus mit der besten Qualität. Dieser Modus erfordert die Featureebene 10 0 oder höher sowie Puffer _ mit Gleitkommagenauigkeit. Dieser Modus unterstützt die Gleitkommagenauigkeit sowie den erweiterten Bereich, wie in der SPEZIFIKATION FÜR DIE Version 4.3 definiert.

Der Farbverwaltungseffekt schlägt beim Zeichnen fehl, wenn die Anwendung einen Qualitätsmodus an fordert, der von der Hardware nicht unterstützt wird. Sie können die Funktionsebene bestimmen, wenn Sie D3D11CreateDevice aufrufen. Sie können die Gleitkommapufferunterstützung überprüfen, indem Sie ID2D1EffectContext::IsBufferPrecisionSupported mit dem Wert D2D1 _ BUFFER PRECISION _ _ 32BPC _ FLOAT aufrufen.

Beispielcode

Ein Beispiel für diesen Effekt finden Sie im Beispiel zur Anpassung von Direct2D-Effektenund unter Lektion 4 des Beispiels.

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