DWRITE_PAINT_ELEMENT struttura (dwrite_3.h)
DWRITE_PAINT_ELEMENT struttura
Specifica le proprietà di un elemento di disegno, ovvero un nodo in un albero visivo associato a un glifo di colore. Viene passato come parametro di output a vari metodi IDWritePaintReader .
Per una descrizione dettagliata del rendering degli elementi di disegno, vedere la specifica della tabella COLR OpenType. Alcune delle descrizioni di questo argomento fanno riferimento ai formati di record di disegno COLR associati a ogni tipo di vernice.
Sintassi
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;
};
Members
paintType
Tipo: DWRITE_PAINT_TYPE
Specifica il tipo di vernice e quindi quale membro dell'unione è valido.
PAINT_UNION
Specifica le proprietà specifiche del tipo dell'elemento paint.
PAINT_UNION.PAINT_LAYERS
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_LAYERS. Contiene uno o più elementi di disegno figlio da disegnare in ordine inferiore.
Corrisponde a un record PaintColrLayers nella tabella COLR OpenType. In alternativa, potrebbe corrispondere a un record BaseGlyph definito dalla versione 0 di COLR.
PAINT_UNION.PAINT_LAYERS.childCount
Tipo: UINT32
Numero di elementi di pittura figlio in ordine inferiore. Usare IDWritePaintReader::MoveToFirstChild e MoveToNextSibling per recuperare gli elementi di disegno figlio. Utilizzare il metodo MoveToParent per tornare all'elemento padre.
PAINT_UNION.layers
Tipo: PAINT_UNION. PAINT_LAYERS
Vedere PAINT_UNION. PAINT_LAYERS.
PAINT_UNION.PAINT_SOLID_GLYPH
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_SOLID_GLYPH. Specifica un glifo con un riempimento a tinta unita. Questo elemento di disegno non ha elementi figlio.
Corrisponde a una combinazione di due record di vernice nella tabella COLR OpenType: un record PaintGlyph , che fa riferimento a un record PaintSolid o PaintVarSolid . In alternativa, potrebbe corrispondere a un record livello definito da COLR versione 0.
PAINT_UNION.PAINT_SOLID_GLYPH.glyphIndex
Tipo: UINT32
Indice glifo che definisce la forma da riempire.
PAINT_UNION.PAINT_SOLID_GLYPH.color
Tipo: DWRITE_PAINT_COLOR
Colore del glifo usato per riempire la forma del glifo.
PAINT_UNION.solidGlyph
Tipo: PAINT_UNION. PAINT_SOLID_GLYPH
Vedere PAINT_UNION. PAINT_SOLID_GLYPH.
PAINT_UNION.solid
Tipo: DWRITE_PAINT_COLOR
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_SOLID. Specifica un colore a tinta unita utilizzato per riempire la forma o la clip correnti. Questo elemento di disegno non ha elementi figlio.
Corrisponde a un record PaintSolid o PaintVarSolid nella tabella COLR OpenType.
PAINT_UNION.PAINT_LINEAR_GRADIENT
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_LINEAR_GRADIENT. Specifica una sfumatura lineare usata per riempire la forma o la clip corrente. Questo elemento di disegno non ha elementi figlio.
Corrisponde a un record PaintLinearGradient o PaintVarLinearGradient nella tabella ColR OpenType.
PAINT_UNION.PAINT_LINEAR_GRADIENT.extendMode
Tipo: UINT32
Valore D2D1_EXTEND_MODE che specifica il modo in cui vengono definiti i colori all'esterno dell'intervallo.
PAINT_UNION.PAINT_LINEAR_GRADIENT.gradientStopCount
Tipo: UINT32
Numero di arresti sfumatura. Usare il metodo IDWritePaintReader::GetGradientStops per ottenere le interruzioni sfumature.
PAINT_UNION.PAINT_LINEAR_GRADIENT.x0
Tipo: float
Coordinata X del punto iniziale della linea di colore.
PAINT_UNION.PAINT_LINEAR_GRADIENT.y0
Tipo: float
Coordinata Y del punto iniziale della linea di colore.
PAINT_UNION.PAINT_LINEAR_GRADIENT.x1
Tipo: float
Coordinata X del punto finale della linea di colore.
PAINT_UNION.PAINT_LINEAR_GRADIENT.y1
Tipo: float
Coordinata Y del punto finale della linea di colore.
PAINT_UNION.PAINT_LINEAR_GRADIENT.x2
Tipo: float
Coordinata X del punto di rotazione della linea di colore.
PAINT_UNION.PAINT_LINEAR_GRADIENT.y2
Tipo: float
Coordinata Y del punto di rotazione della linea di colore.
PAINT_UNION.linearGradient
Tipo: PAINT_UNION. PAINT_LINEAR_GRADIENT
Vedere PAINT_UNION. PAINT_LINEAR_GRADIENT.
PAINT_UNION.PAINT_RADIAL_GRADIENT
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_RADIAL_GRADIENT. Specifica una sfumatura radiale usata per riempire la forma o la clip corrente. Questo elemento di disegno non ha elementi figlio.
Corrisponde a un record PaintRadialGradient o PaintVarRadialGradient nella tabella ColR OpenType.
PAINT_UNION.PAINT_RADIAL_GRADIENT.extendMode
Tipo: UINT32
Valore D2D1_EXTEND_MODE che specifica il modo in cui vengono definiti i colori all'esterno dell'intervallo.
PAINT_UNION.PAINT_RADIAL_GRADIENT.gradientStopCount
Tipo: UINT32
Numero di arresti sfumatura. Usare il metodo IDWritePaintReader::GetGradientStops per ottenere le interruzioni sfumature.
PAINT_UNION.PAINT_RADIAL_GRADIENT.x0
Tipo: float
Coordinata X centrale del cerchio iniziale.
PAINT_UNION.PAINT_RADIAL_GRADIENT.y0
Tipo: float
Coordinata Y centrale del cerchio iniziale.
PAINT_UNION.PAINT_RADIAL_GRADIENT.radius0
Tipo: float
Raggio del cerchio iniziale.
PAINT_UNION.PAINT_RADIAL_GRADIENT.x1
Tipo: float
Coordinata X centrale del cerchio finale.
PAINT_UNION.PAINT_RADIAL_GRADIENT.y1
Tipo: float
Coordinata Y centrale del cerchio finale.
PAINT_UNION.PAINT_RADIAL_GRADIENT.radius1
Tipo: float
Raggio del cerchio finale.
PAINT_UNION.radialGradient
Tipo: PAINT_UNION. PAINT_RADIAL_GRADIENT
Vedere PAINT_UNION. PAINT_RADIAL_GRADIENT.
PAINT_UNION.PAINT_SWEEP_GRADIENT
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_SWEEP_GRADIENT. Specifica una sfumatura di sweep usata per riempire la forma o la clip corrente. Questo elemento di disegno non ha elementi figlio.
Corrisponde a un record PaintSweepGradient o PaintVarSweepGradient nella tabella ColR OpenType.
PAINT_UNION.PAINT_SWEEP_GRADIENT.extendMode
Tipo: UINT32
Valore D2D1_EXTEND_MODE che specifica il modo in cui vengono definiti i colori all'esterno dell'intervallo.
PAINT_UNION.PAINT_SWEEP_GRADIENT.gradientStopCount
Tipo: UINT32
Numero di arresti sfumatura. Usare il metodo IDWritePaintReader::GetGradientStops per ottenere le interruzioni sfumature.
PAINT_UNION.PAINT_SWEEP_GRADIENT.centerX
Tipo: float
Coordinata X centrale.
PAINT_UNION.PAINT_SWEEP_GRADIENT.centerY
Tipo: float
Coordinata Y centrale.
PAINT_UNION.PAINT_SWEEP_GRADIENT.startAngle
Tipo: float
Inizio dell'intervallo angolare della sfumatura, misurato in gradi in senso antiorario dalla direzione dell'asse x positivo.
PAINT_UNION.PAINT_SWEEP_GRADIENT.endAngle
Tipo: float
Fine dell'intervallo angolare della sfumatura, misurata in gradi in senso antiorario dalla direzione dell'asse x positivo.
PAINT_UNION.sweepGradient
Tipo: PAINT_UNION. PAINT_SWEEP_GRADIENT
Vedere PAINT_UNION. PAINT_SWEEP_GRADIENT.
PAINT_UNION.PAINT_GLYPH
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_GLYPH. Specifica una forma di glifo da riempire o, in modo equivalente, un'area di ritaglio. Questo elemento paint ha un elemento figlio.
L'elemento di disegno figlio definisce la modalità di riempimento della forma del glifo. L'elemento figlio può essere un singolo elemento paint, ad esempio una sfumatura lineare. Oppure l'elemento figlio può essere la radice di una struttura ad albero visuale di cui eseguire il rendering con la forma del glifo come area di ritaglio. Corrisponde a un record PaintGlyph nella tabella COLR OpenType.
PAINT_UNION.PAINT_GLYPH.glyphIndex
Tipo: UINT32
Indice del glifo che definisce la forma da riempire.
PAINT_UNION.glyph
Tipo: PAINT_UNION. PAINT_GLYPH
Vedere PAINT_UNION. PAINT_GLYPH.
PAINT_UNION.PAINT_COLOR_GLYPH
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_COLOR_GLYPH. Specifica un altro glifo di colore, utilizzato come componente riutilizzabile. Questo elemento paint ha un elemento figlio, ovvero l'elemento di disegno radice del glifo di colore specificato.
Corrisponde a un record PaintColorGlyph nella tabella COLR OpenType.
PAINT_UNION.PAINT_COLOR_GLYPH.glyphIndex
Tipo: UINT32
Indice del glifo di colore a cui si fa riferimento.
PAINT_UNION.PAINT_COLOR_GLYPH.clipBox
Tipo: D2D_RECT_F
Casella clip del glifo di colore a cui si fa riferimento, in ems. Se il glifo di colore non specifica una casella di ritaglio, si tratta di un rettangolo vuoto. Se non è un rettangolo vuoto, il client deve ritagliare il contenuto figlio in questa casella.
PAINT_UNION.colorGlyph
Tipo: PAINT_UNION. PAINT_COLOR_GLYPH
Vedere PAINT_UNION. PAINT_COLOR_GLYPH.
PAINT_UNION.transform
Tipo: DWRITE_MATRIX
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_TRANSFORM. Specifica una trasformazione affine da applicare al contenuto figlio. Questo elemento paint ha un elemento figlio, ovvero il contenuto trasformato.
Corrisponde ai formati di disegno da 12 a 31 nella tabella COLR OpenType.
PAINT_UNION.PAINT_COMPOSITE
Valido per gli elementi di disegno di tipo DWRITE_PAINT_TYPE_COMPOSITE. Combina i due elementi di disegno figlio utilizzando la modalità di composizione o fusione specificata. Questo elemento paint ha due elementi figlio. Il primo figlio è la fonte di vernice. Il secondo figlio è la destinazione della vernice (o sfondo).
Corrisponde a un record PaintComposite nella tabella COLR OpenType.
PAINT_UNION.PAINT_COMPOSITE.mode
Tipo: DWRITE_COLOR_COMPOSITE_MODE
Specifica la modalità di composizione o fusione.
PAINT_UNION.composite
Tipo: PAINT_UNION. PAINT_COMPOSITE
Vedere PAINT_UNION. PAINT_COMPOSITE.
paint
Tipo: PAINT_UNION
Vedere PAINT_UNION.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10, versione 1809 (con SDK per app di Windows 1.2 o versione successiva) |
Intestazione | dwrite_3.h |