A run of glyphs that share a font program, a text rendering mode and the colours and line parameters they are painted with, as a display list hands it to DrawGlyphs(in GlyphRun). Valid only during that call.
public ref readonly struct GlyphRun
ISO 32000-2 §9.4.3 (text-showing operators), §9.3.6 (text rendering mode), §9.2.4 (glyph space and the font matrix). Every glyph carries its glyph id and text matrix, so a backend that draws glyphs natively from Program can position each one; a backend that draws outlines (the software rasterizer, or any backend when outlines are forced) fills GetOutline(Int32) through GetGlyphTransform(Int32) and the current transform.
Painting (§9.3.6, Table 104): when Fills, each glyph's outline is filled with FillColor by the non-zero winding rule (§9.2.4: glyph outlines are filled that way); when Strokes, its outline (mapped to user space) is stroked with StrokeStyle and StrokeColor; a glyph that is both is filled, then stroked, before the next glyph. Neither is set for mode 3 (Invisible), which the list records only so that hit-testing sees the text, nor for a colour that is a pattern (not painted yet). Modes 4 to 7 paint like 0 to 3; adding their glyphs to the clip comes in a later ticket.
kind:method, kind:property, kind:ctor. Press Esc to clear.FontMatrixGets the matrix from the program's glyph space to text space (FontMatrix; identity without a program).GlyphsGets the glyphs, in the order they were shown.ProgramGets the font program the glyph ids select in: the font's embedded program, or the substitute the engine's font resolvers found for it; null when the font has neither (the glyphs then have empty outlines).RenderingModeGets the text rendering mode the glyphs were shown in.StrokeColorGets the stroking colour, unconverted; meaningful only when Strokes.StrokesGets a value indicating whether the glyphs' outlines are stroked with StrokeStyle and StrokeColor.StrokeStyleGets the line parameters of the stroke, in user space; meaningful only when Strokes.GetGlyphTransform(Int32)Gets the matrix from a glyph's glyph space to user space: the font matrix, the horizontal scale, then the text matrix.GetOutline(Int32)Gets the outline of a glyph in glyph space, interned once per program and glyph id in the list.