Pretext
src/Pretext/Pretext.csprojPretextnetstandard2.0, net461, net6.0, net8.0, net10.0Pretext.Contracts
src/Pretext.Contracts/Pretext.Contracts.csprojPretextnetstandard2.0, net461, net6.0, net8.0, net10.0Pretext and backend packagesPretext.Layout
src/Pretext.Layout/Pretext.Layout.csprojPretext.Layoutnetstandard2.0, net461, net6.0, net8.0, net10.0Pretext.DirectWrite
src/Pretext.DirectWrite/Pretext.DirectWrite.csprojPretext.DirectWritenetstandard2.0, net461, net6.0, net8.0, net10.0Pretext.FreeType
src/Pretext.FreeType/Pretext.FreeType.csprojPretext.FreeTypenetstandard2.0, net461, net6.0, net8.0, net10.0Pretext.CoreText
src/Pretext.CoreText/Pretext.CoreText.csprojPretext.CoreTextnetstandard2.0, net461, net6.0, net8.0, net10.0Pretext.SkiaSharp
src/Pretext.SkiaSharp/Pretext.SkiaSharp.csprojPretext.SkiaSharpnetstandard2.0, net461, net6.0, net8.0, net10.0Pretext.Uno
src/Pretext.Uno/Pretext.Uno.csprojPretext.Uno.Controlsnet10.0-desktopPretext namespace and Pretext.Layouttests/Pretext.Uno.Tests/Pretext.Uno.Tests.csprojsamples/PretextSamples.Shared/PretextSamples.Shared.csprojsamples/PretextSamples.Uno/PretextSamples.Uno.csprojsamples/PretextSamples.MacOS/PretextSamples.MacOS.csprojThe public API is centered on PretextLayout and the data types around it:
PreparedTextPreparedTextWithSegmentsLayoutResultLayoutLinesResultLayoutLineLayoutLineRangeThe packages are layered:
Pretext is the engine. It is reusable with any measurement backend that implements Pretext.Contracts.Pretext.Contracts defines the public backend seam for custom measurement integrations.Pretext.Layout is the platform-neutral helper layer for wrap metrics and obstacle-aware flows.Pretext.DirectWrite, Pretext.FreeType, and Pretext.CoreText are the first-party host-native backends.Pretext.SkiaSharp is the portable first-party fallback backend.Pretext.Uno is a host-specific companion layer. It depends on Pretext, Pretext.Layout, and the first-party backend packages.For package-specific installation and usage details, continue into the dedicated package pages in this section.
If you are documenting or reviewing behavior, treat the core package as the source of truth for:
Treat Pretext.Layout as the reusable helper package for higher-level layout workflows, and Pretext.Uno as the convenience package for Uno-specific host integration.