PeachDrawing.Text

PeachDrawing.Text.Outlines

ColorPaint Class

A node of the paint graph of a colour glyph (COLR version 1): a fill, a transform, a clip to a glyph’s shape, or a way of combining other nodes. Every node is one of the sealed types that derive from this one, named as the COLR specification names its paint formats.

public abstract class ColorPaint

Inheritance System.Object → ColorPaint

Derived
↳ PaintColrGlyph
↳ PaintColrLayers
↳ PaintComposite
↳ PaintGlyph
↳ PaintLinearGradient
↳ PaintRadialGradient
↳ PaintSolid
↳ PaintSweepGradient
↳ PaintTransform

Remarks

The translate, scale, rotate and skew formats, variable ones included, all arrive as a PaintTransform with the matrix worked out, and a format this library does not know arrives as no node at all. The variable paints, colour lines and transforms of a variable font arrive with the numbers that apply at the location of the Typeface they are read from.

The nodes are shared with every other reader of the font and must be treated as read-only. Nodes can be shared within a graph and, in a malformed font, can refer back to themselves through PaintColrGlyph and PaintColrLayers, so a walk has to bound its depth and its work.