PeachDrawing

PeachDrawing.RasterCanvas

RasterCanvas.DrawGlyphs(IReadOnlyList<GlyphPlacement>, Font, PaintColor) Method

Draws each of glyphs at its own explicit position, addressed directly by font glyph index rather than by Unicode character - unlike DrawString(string, Font, PaintColor, PaintPoint, Size, double, FontPalette, Nullable<ShapeSettings>), this never re-shapes/re-maps through cmap/GSUB, so it can draw a glyph with no Unicode mapping at all (e.g. an OpenType MATH table’s stretchy-operator assembly parts or pre-sized size variants, which are reached only via MathVariantsTable glyph ids, not through any character). Each GlyphPlacement’s X/Y is that glyph’s own baseline origin (not a bounding-box corner), in the same working unit space as DrawString(string, Font, PaintColor, PaintPoint, Size, double, FontPalette, Nullable<ShapeSettings>)’s own point parameter - unlike that method, there is no separate ascent-relative adjustment, since every glyph here already carries its own exact target baseline position.

public override void DrawGlyphs(System.Collections.Generic.IReadOnlyList<PeachDrawing.Core.GlyphPlacement> glyphs, PeachDrawing.Core.Font font, PeachDrawing.Core.PaintColor color);

Parameters

glyphs System.Collections.Generic.IReadOnlyList<GlyphPlacement>

font Font

color PaintColor