Overview of RichTextKit
mainRichTextKit is a library designed for rich-text layout, measurement, and rendering specifically for SkiaSharp. It provides advanced text handling capabilities that go beyond standard Skia functionality, including text shaping, font fallback, and support for complex Unicode algorithms.
Key capabilities include:
- Text Layout & Shaping: Uses HarfBuzzSharp for text shaping and supports common font styles (bold, italic, underline, super/sub-script, etc.).
- Internationalization: Supports Bi-directional and LTR/RTL text (UAX #9), Unicode word-break algorithms (UAX #14), and font fallback for emojis and international character sets.
- Layout Constraints: Supports max height, max line limits, and truncation with ellipsis.
- Interaction & Measurement: Provides text measurement, hit testing, caret position information, and the ability to paint selection range highlights.
- Minimal Dependencies: Only requires
SkiaSharpandHarfBuzzSharp.