DWRITE_PAINT_ELEMENT Struktur (dwrite_3.h)
DWRITE_PAINT_ELEMENT Struktur
Gibt die Eigenschaften eines Paint-Elements an, bei dem es sich um einen Knoten in einer visuellen Struktur handelt, die einer Farbglyphe zugeordnet ist. Dies wird als Ausgabeparameter an verschiedene IDWritePaintReader Methoden übergeben.
Eine ausführliche Beschreibung der Darstellung von Paint-Elementen finden Sie in der OpenType COLR-Tabellenspezifikation. Einige der Beschreibungen in diesem Thema beziehen sich auf die COLR-Farbaufzeichnungsformate, die den einzelnen Farbentypen zugeordnet sind.
Syntax
struct DWRITE_PAINT_ELEMENT {
DWRITE_PAINT_TYPE paintType;
union {
struct {
UINT32 childCount;
} PAINT_LAYERS;
PAINT_LAYERS layers;
struct {
UINT32 glyphIndex;
DWRITE_PAINT_COLOR color;
} PAINT_SOLID_GLYPH;
PAINT_SOLID_GLYPH solidGlyph;
DWRITE_PAINT_COLOR solid;
struct {
UINT32 extendMode;
UINT32 gradientStopCount;
float x0;
float y0;
float x1;
float y1;
float x2;
float y2;
} PAINT_LINEAR_GRADIENT;
PAINT_LINEAR_GRADIENT linearGradient;
struct {
UINT32 extendMode;
UINT32 gradientStopCount;
float x0;
float y0;
float radius0;
float x1;
float y1;
float radius1;
} PAINT_RADIAL_GRADIENT;
PAINT_RADIAL_GRADIENT radialGradient;
struct {
UINT32 extendMode;
UINT32 gradientStopCount;
float centerX;
float centerY;
float startAngle;
float endAngle;
} PAINT_SWEEP_GRADIENT;
PAINT_SWEEP_GRADIENT sweepGradient;
struct {
UINT32 glyphIndex;
} PAINT_GLYPH;
PAINT_GLYPH glyph;
struct {
UINT32 glyphIndex;
D2D_RECT_F clipBox;
} PAINT_COLOR_GLYPH;
PAINT_COLOR_GLYPH colorGlyph;
DWRITE_MATRIX transform;
struct {
DWRITE_COLOR_COMPOSITE_MODE mode;
} PAINT_COMPOSITE;
PAINT_COMPOSITE composite;
} PAINT_UNION;
PAINT_UNION paint;
};
Elemente
paintType
Typ: DWRITE_PAINT_TYPE
Gibt den Farbtyp und somit an, welches Mitglied der Vereinigung gültig ist.
PAINT_UNION
Gibt typspezifische Eigenschaften des Paint-Elements an.
PAINT_UNION.PAINT_LAYERS
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_LAYERS. Enthält mindestens ein untergeordnetes Farbelement, das in der untersten Reihenfolge gezeichnet werden soll.
Dies entspricht einem PaintColrLayers Datensatz in der OpenType COLR-Tabelle. Oder sie entspricht einem BaseGlyphen- Datensatz, der von COLR Version 0 definiert wurde.
PAINT_UNION.PAINT_LAYERS.childCount
Typ: UINT32-
Anzahl der untergeordneten Farbelemente in bottom-up-Reihenfolge. Verwenden Sie IDWritePaintReader::MoveToFirstChild und MoveToNextSibling-, um die untergeordneten Paint-Elemente abzurufen. Verwenden Sie die MoveToParent Methode, um zum übergeordneten Element zurückzukehren.
PAINT_UNION.layers
Typ: PAINT_UNION. PAINT_LAYERS
Siehe PAINT_UNION. PAINT_LAYERS.
PAINT_UNION.PAINT_SOLID_GLYPH
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_SOLID_GLYPH. Gibt eine Glyphe mit vollfarbiger Füllung an. Dieses Paint-Element hat keine untergeordneten Elemente.
Dies entspricht einer Kombination aus zwei Paint-Datensätzen in der OpenType COLR-Tabelle: einer PaintGlyph Datensatz, der entweder auf einen PaintSolid oder PaintVarSolid Datensatz verweist. Oder es kann einem Layer Datensatz entsprechen, der von COLR Version 0 definiert wurde.
PAINT_UNION.PAINT_SOLID_GLYPH.glyphIndex
Typ: UINT32-
Glyphenindex, der die zu füllende Form definiert.
PAINT_UNION.PAINT_SOLID_GLYPH.color
Typ: DWRITE_PAINT_COLOR
Glyphenfarbe, die zum Ausfüllen der Glyphenform verwendet wird.
PAINT_UNION.solidGlyph
Typ: PAINT_UNION. PAINT_SOLID_GLYPH
Siehe PAINT_UNION. PAINT_SOLID_GLYPH.
PAINT_UNION.solid
Typ: DWRITE_PAINT_COLOR
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_SOLID. Gibt eine Volltonfarbe an, die zum Ausfüllen der aktuellen Form oder des Aktuellen Clips verwendet wird. Dieses Paint-Element hat keine untergeordneten Elemente.
Dies entspricht einem PaintSolid oder PaintVarSolid Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_LINEAR_GRADIENT
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_LINEAR_GRADIENT. Gibt einen linearen Farbverlauf an, der zum Ausfüllen der aktuellen Form oder des aktuellen Clips verwendet wird. Dieses Paint-Element hat keine untergeordneten Elemente.
Dies entspricht einem PaintLinearGradient oder PaintVarLinearGradient Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_LINEAR_GRADIENT.extendMode
Typ: UINT32-
Ein D2D1_EXTEND_MODE Wert, der angibt, wie Farben außerhalb des Intervalls definiert werden.
PAINT_UNION.PAINT_LINEAR_GRADIENT.gradientStopCount
Typ: UINT32-
Anzahl der Farbverlaufsstopps. Verwenden Sie die IDWritePaintReader::GetGradientStops Methode, um die Farbverlaufsstopps abzurufen.
PAINT_UNION.PAINT_LINEAR_GRADIENT.x0
Typ: float-
X-Koordinate des Startpunkts der Farblinie.
PAINT_UNION.PAINT_LINEAR_GRADIENT.y0
Typ: float-
Y-Koordinate des Startpunkts der Farblinie.
PAINT_UNION.PAINT_LINEAR_GRADIENT.x1
Typ: float-
X-Koordinate des Endpunkts der Farblinie.
PAINT_UNION.PAINT_LINEAR_GRADIENT.y1
Typ: float-
Y-Koordinate des Endpunkts der Farblinie.
PAINT_UNION.PAINT_LINEAR_GRADIENT.x2
Typ: float-
X-Koordinate des Drehungspunkts der Farblinie.
PAINT_UNION.PAINT_LINEAR_GRADIENT.y2
Typ: float-
Y-Koordinate des Drehungspunkts der Farblinie.
PAINT_UNION.linearGradient
Typ: PAINT_UNION. PAINT_LINEAR_GRADIENT
Siehe PAINT_UNION. PAINT_LINEAR_GRADIENT.
PAINT_UNION.PAINT_RADIAL_GRADIENT
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_RADIAL_GRADIENT. Gibt einen radialen Farbverlauf an, der zum Ausfüllen der aktuellen Form oder des aktuellen Clips verwendet wird. Dieses Paint-Element hat keine untergeordneten Elemente.
Dies entspricht einem PaintRadialGradient oder PaintVarRadialGradient Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_RADIAL_GRADIENT.extendMode
Typ: UINT32-
Ein D2D1_EXTEND_MODE Wert, der angibt, wie Farben außerhalb des Intervalls definiert werden.
PAINT_UNION.PAINT_RADIAL_GRADIENT.gradientStopCount
Typ: UINT32-
Anzahl der Farbverlaufsstopps. Verwenden Sie die IDWritePaintReader::GetGradientStops Methode, um die Farbverlaufsstopps abzurufen.
PAINT_UNION.PAINT_RADIAL_GRADIENT.x0
Typ: float-
Zentriere X-Koordinate des Startkreises.
PAINT_UNION.PAINT_RADIAL_GRADIENT.y0
Typ: float-
Y-Koordinate des Anfangskreises zentriere.
PAINT_UNION.PAINT_RADIAL_GRADIENT.radius0
Typ: float-
Radius des Anfangskreises.
PAINT_UNION.PAINT_RADIAL_GRADIENT.x1
Typ: float-
Zentriere X-Koordinate des Endkreises.
PAINT_UNION.PAINT_RADIAL_GRADIENT.y1
Typ: float-
Y-Koordinate des Endkreises.
PAINT_UNION.PAINT_RADIAL_GRADIENT.radius1
Typ: float-
Radius des Endkreises.
PAINT_UNION.radialGradient
Typ: PAINT_UNION. PAINT_RADIAL_GRADIENT
Siehe PAINT_UNION. PAINT_RADIAL_GRADIENT.
PAINT_UNION.PAINT_SWEEP_GRADIENT
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_SWEEP_GRADIENT. Gibt einen Aufräumverlauf an, der zum Ausfüllen der aktuellen Form oder des aktuellen Clips verwendet wird. Dieses Paint-Element hat keine untergeordneten Elemente.
Dies entspricht einem PaintSweepGradient oder PaintVarSweepGradient Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_SWEEP_GRADIENT.extendMode
Typ: UINT32-
Ein D2D1_EXTEND_MODE Wert, der angibt, wie Farben außerhalb des Intervalls definiert werden.
PAINT_UNION.PAINT_SWEEP_GRADIENT.gradientStopCount
Typ: UINT32-
Anzahl der Farbverlaufsstopps. Verwenden Sie die IDWritePaintReader::GetGradientStops Methode, um die Farbverlaufsstopps abzurufen.
PAINT_UNION.PAINT_SWEEP_GRADIENT.centerX
Typ: float-
X-Koordinate zentriere.
PAINT_UNION.PAINT_SWEEP_GRADIENT.centerY
Typ: float-
Y-Koordinate zentriere.
PAINT_UNION.PAINT_SWEEP_GRADIENT.startAngle
Typ: float-
Beginn des Winkelbereichs des Farbverlaufs, gemessen im Gegenuhrzeigersinn von der Richtung der positiven x-Achse.
PAINT_UNION.PAINT_SWEEP_GRADIENT.endAngle
Typ: float-
Ende des Winkelbereichs des Farbverlaufs, gemessen im Gegenuhrzeigersinn von der Richtung der positiven x-Achse.
PAINT_UNION.sweepGradient
Typ: PAINT_UNION. PAINT_SWEEP_GRADIENT
Siehe PAINT_UNION. PAINT_SWEEP_GRADIENT.
PAINT_UNION.PAINT_GLYPH
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_GLYPH. Gibt eine Glyphenform an, die gefüllt oder entsprechend einem Clipbereich gefüllt werden soll. Dieses Paint-Element verfügt über ein untergeordnetes Element.
Das untergeordnete Paint-Element definiert, wie die Glyphenform gefüllt wird. Das untergeordnete Element kann ein einzelnes Paint-Element sein, z. B. ein linearer Farbverlauf. Oder das untergeordnete Element kann der Stamm einer visuellen Struktur sein, die mit der Glyphenform als Clipbereich gerendert werden soll. Dies entspricht einem PaintGlyph Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_GLYPH.glyphIndex
Typ: UINT32-
Glyphenindex der Glyphe, die die zu füllende Form definiert.
PAINT_UNION.glyph
Siehe PAINT_UNION. PAINT_GLYPH.
PAINT_UNION.PAINT_COLOR_GLYPH
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_COLOR_GLYPH. Gibt eine weitere Farbglyphe an, die als wiederverwendbare Komponente verwendet wird. Dieses Paint-Element verfügt über ein untergeordnetes Element, das das Stammmalelement der angegebenen Farbglyphe ist.
Dies entspricht einem PaintColorGlyph Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_COLOR_GLYPH.glyphIndex
Typ: UINT32-
Glyphenindex der referenzierten Farbglyphe.
PAINT_UNION.PAINT_COLOR_GLYPH.clipBox
Typ: D2D_RECT_F
Clip box of the referenced color glyph, in ems. Wenn die Farbglyphe kein Clip box angibt, ist dies ein leeres Rechteck. Wenn es sich nicht um ein leeres Rechteck handelt, muss der Client den untergeordneten Inhalt in dieses Feld ausschneiden.
PAINT_UNION.colorGlyph
Typ: PAINT_UNION. PAINT_COLOR_GLYPH
Siehe PAINT_UNION. PAINT_COLOR_GLYPH.
PAINT_UNION.transform
Typ: DWRITE_MATRIX
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_TRANSFORM. Gibt eine affine Transformation an, die auf untergeordnete Inhalte angewendet werden soll. Dieses Paint-Element verfügt über ein untergeordnetes Element, bei dem es sich um den transformierten Inhalt handelt.
Dies entspricht den Formaten 12 bis 31 in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_COMPOSITE
Gültig für Farbelemente vom Typ DWRITE_PAINT_TYPE_COMPOSITE. Kombiniert die beiden untergeordneten Farbelemente mithilfe des angegebenen Kompositing- oder Mischmodus. Dieses Paint-Element verfügt über zwei untergeordnete Elemente. Das erste untergeordnete Element ist die Lackquelle. Das zweite untergeordnete Element ist das Farbziel (oder die Kulisse).
Dies entspricht einem PaintComposite- Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_COMPOSITE.mode
Typ: DWRITE_COLOR_COMPOSITE_MODE
Gibt den Kompositing- oder Mischmodus an.
PAINT_UNION.composite
Typ: PAINT_UNION. PAINT_COMPOSITE
Siehe PAINT_UNION. PAINT_COMPOSITE.
paint
Typ: PAINT_UNION
Siehe PAINT_UNION.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützter Client (Mindestversion) | Windows 10, Version 1809 (mit Windows App SDK 1.2 oder höher) |
Kopfzeile | dwrite_3.h |