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 Farbsymbolvorlage zugeordnet ist. Dies wird als Ausgabeparameter an verschiedene IDWritePaintReader-Methoden übergeben.
Eine ausführliche Beschreibung, wie Paint-Elemente gerendert werden sollen, finden Sie in der OpenType COLR-Tabellenspezifikation. Einige der Beschreibungen in diesem Thema beziehen sich auf die COLR-Farbdatensatzformate, die jedem Farbtyp 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;
};
Member
paintType
Typ: DWRITE_PAINT_TYPE
Gibt den Farbtyp und somit den gültigen Member der Union an.
PAINT_UNION
Gibt typspezifische Eigenschaften des Paint-Elements an.
PAINT_UNION.PAINT_LAYERS
Gültig für Paint-Elemente vom Typ DWRITE_PAINT_TYPE_LAYERS. Enthält ein oder mehrere untergeordnete Paint-Elemente, die in bottom-up-Reihenfolge gezeichnet werden sollen.
Dies entspricht einem PaintColrLayers-Eintrag in der OpenType COLR-Tabelle. Oder es kann einem BaseGlypheneintrag entsprechen, der von COLR Version 0 definiert wird.
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 Paint-Elemente vom Typ DWRITE_PAINT_TYPE_SOLID_GLYPH. Gibt eine Glyphe mit einer Volltonfarbfüllung an. Dieses Paint-Element verfügt über keine untergeordneten Elemente.
Dies entspricht einer Kombination aus zwei Paint-Datensätzen in der OpenType COLR-Tabelle: einem PaintGlyph-Datensatz , der entweder auf einen PaintSolid - oder einen PaintVarSolid-Datensatz verweist. Oder es entspricht einem Layer-Datensatz , der von COLR Version 0 definiert wird.
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 Paint-Elemente 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 verfügt über keine untergeordneten Elemente.
Dies entspricht einem PaintSolid - oder PaintVarSolid-Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_LINEAR_GRADIENT
Gültig für Paint-Elemente 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 verfügt über 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 Drehpunkts der Farblinie.
PAINT_UNION.PAINT_LINEAR_GRADIENT.y2
Typ: float
Y-Koordinate des Drehpunkts 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 Paint-Elemente 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 verfügt über 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
Zentrieren der X-Koordinate des Startkreises.
PAINT_UNION.PAINT_RADIAL_GRADIENT.y0
Typ: float
Y-Koordinate des Startkreises zentrieren.
PAINT_UNION.PAINT_RADIAL_GRADIENT.radius0
Typ: float
Radius des Startkreises.
PAINT_UNION.PAINT_RADIAL_GRADIENT.x1
Typ: float
Zentrieren der X-Koordinate des Endkreises.
PAINT_UNION.PAINT_RADIAL_GRADIENT.y1
Typ: float
Zentrieren der 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 Paint-Elemente vom Typ DWRITE_PAINT_TYPE_SWEEP_GRADIENT. Gibt einen Sweep-Farbverlauf an, der zum Ausfüllen der aktuellen Form oder des aktuellen Clips verwendet wird. Dieses Paint-Element verfügt über 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
Zentrieren der X-Koordinate.
PAINT_UNION.PAINT_SWEEP_GRADIENT.centerY
Typ: float
Y-Koordinate zentrieren.
PAINT_UNION.PAINT_SWEEP_GRADIENT.startAngle
Typ: float
Beginn des Winkelbereichs des Farbverlaufs, gemessen gegen den Uhrzeigersinn aus Richtung der positiven x-Achse.
PAINT_UNION.PAINT_SWEEP_GRADIENT.endAngle
Typ: float
Ende des Winkelbereichs des Farbverlaufs, gemessen in Graden gegen den Uhrzeigersinn aus 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 Paint-Elemente vom Typ DWRITE_PAINT_TYPE_GLYPH. Gibt eine Glyphenform an, die ausgefüllt werden soll, oder äquivalent einen Clipbereich. 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 Glyphe-Form als Clipbereich gerendert werden soll. Dies entspricht einem PaintGlyph-Eintrag 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 Paint-Elemente vom Typ DWRITE_PAINT_TYPE_COLOR_GLYPH. Gibt ein weiteres Farbsymbol an, das als wiederverwendbare Komponente verwendet wird. Dieses Paint-Element verfügt über ein untergeordnetes Element, das das Stamm paint-Element der angegebenen Farb-Glyphe ist.
Dies entspricht einem PaintColorGlyph-Datensatz in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_COLOR_GLYPH.glyphIndex
Typ: UINT32
Glyphenindex des Farbsymbols, auf das verwiesen wird.
PAINT_UNION.PAINT_COLOR_GLYPH.clipBox
Typ: D2D_RECT_F
Clip box of the referenced color glyph, in ems. Wenn die Farbglyphe kein Clipfeld 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 Paint-Elemente 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 Farbformaten 12 bis 31 in der OpenType COLR-Tabelle.
PAINT_UNION.PAINT_COMPOSITE
Gültig für Paint-Elemente vom Typ DWRITE_PAINT_TYPE_COMPOSITE. Kombiniert die beiden untergeordneten Paint-Elemente mit dem angegebenen Kompositing- oder Mischmodus. Dieses Paint-Element verfügt über zwei untergeordnete Elemente. Das erste untergeordnete Element ist die Farbquelle. Das zweite untergeordnete Element ist das Farbziel (oder der Hintergrund).
Dies entspricht einem PaintComposite-Eintrag 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ützte Mindestversion (Client) | Windows 10, Version 1809 (mit Windows App SDK 1.2 oder höher) |
Kopfzeile | dwrite_3.h |