PeachDrawing.Text

PeachDrawing.Text.Outlines

OutlineRequest Struct

What a caller wants of an outline: at which size, and how much to fit it to the pixel grid.

public readonly struct OutlineRequest

Remarks

The default value asks for what TryGetOutline(ushort, GlyphOutline) gives: the design of the font, in design units, and, whatever is asked, no stem darkening.

Properties  
GridFitting How much to fit the outline to the pixel grid.
PixelsPerEm A convenience for the common case of a square pixel: setting it sets both PixelsPerEmX and PixelsPerEmY to the same value; reading it gives PixelsPerEmX. Every caller that only ever set this property keeps asking for, and getting, exactly what it always did.
PixelsPerEmX The horizontal size the outline will be drawn at, in pixels per em, for an outline that is grid-fitted. It may be fractional; the font’s hinting works on the size in 1/64 pixel, except that a TrueType font that asks for whole pixels per em is fitted at the nearest whole size (see PixelsPerEm). Ignored, and the outline stays in design units, for None. Setting PixelsPerEm instead sets this and PixelsPerEmY together.
PixelsPerEmY The vertical size the outline will be drawn at, in pixels per em; see PixelsPerEmX, which this follows in every other respect. A device whose pixels are not square (a non-uniform scale or resolution) gives this a different value from PixelsPerEmX, which is what fits a font’s hinting instructions for a stretched grid instead of a square one (FreeType’s own x_ppem/y_ppem).
StemDarkening Whether the stems of a glyph of a font with CFF outlines are made a little heavier when the outline is fitted. Off unless asked for.