PeachDrawing.Skia Namespace

Classes  
PeachTextShaper An ISkiaTextShaper that shapes with the PeachDrawing.Text engine: OpenType substitution and positioning (ligatures, kerning, mark attachment, contextual lookups), Arabic, Syriac, Indic and Khmer shaping. Pass it to SkiaRenderContext to give Native text real shaping with no shaping library beyond this package.
SkiaCanvas A Canvas that draws with Skia: shapes, gradients, clips, layers, text and images go to an SkiaSharp.SKCanvas the caller already has (FromCanvas(SkiaRenderContext, SKCanvas, Rect, SkiaLinkOptions)) - a GPU surface’s, a bitmap’s, a picture recorder’s - or to the surface a SkiaComposer is given.
SkiaComposer A drawing of one page onto a surface the caller supplies: it scales the page to fill the surface, clears it, and gives the SkiaCanvas to draw with, then reads the result back as pixels or saves it as an image file.
SkiaComposerOptions How a SkiaComposer sets up its canvas.
SkiaCursorArea An area of the canvas the document asked to show a pointer of its own over.
SkiaLink A link a document drew: an area of the canvas that leads to an address or to a named place in the same document.
SkiaLinkActivatingEventArgs Data for LinkActivating.
SkiaLinkMap The links and named places a SkiaCanvas was told about while a document was painted. A Skia canvas draws pixels, so a link is not part of the picture: the host asks this map what is under the pointer and, when the user clicks, activates it.
SkiaLinkOptions What SkiaLinkMap may open, and how.
SkiaRenderContext The RenderContext for SkiaCanvas: where fonts, images and colours come from. It owns no surface and creates no GPU context; it may be told about the one the host draws with (GpuContext) so decoded images are uploaded to it once.
SkiaSemanticRegion An area of the canvas the document described to assistive technology: what it is, what it is called and what state it is in.
SkiaShapedRun One run of text after shaping: which glyph to draw for each position, where each goes, and how wide the whole run is. All the arrays have one entry per glyph, in drawing order, and positions are relative to the start of the run on its baseline.
Interfaces  
ISkiaLinkLauncher Opens an address on the host’s behalf: implement it with whatever the platform offers for starting a handler for a URI.
ISkiaTextShaper Turns text into positioned glyphs for the Native engine. The package ships one that needs nothing beyond Skia (one glyph per character, in order, advanced by the font’s own widths - right for text that needs no shaping); a host that wants real shaping (ligatures, kerning, scripts that reorder or join) implements this over a shaping library such as SkiaSharp.HarfBuzz, which this package deliberately does not depend on, and passes it to SkiaRenderContext.
Enums  
SkiaImageCodec Which decoder turns an encoded image (PNG, JPEG, ...) into the pixels a SkiaRenderContext draws.
SkiaImageFormat The file format Save(Stream, SkiaImageFormat, int) writes.
SkiaTextEngine Which engine measures, shapes and draws the text of a SkiaRenderContext’s fonts.