All modules:

Link copied to clipboard

Bridges RTF and Compose's AnnotatedString, so you can render RTF directly in BasicText and convert styled Compose text back to RTF. Targets the Compose subset: JVM/Desktop, Android, wasmJs, iOS, macOS.

Link copied to clipboard

The shared, dependency-free foundation every other RtfParserKmp module builds on. It defines the RTF event model, the listener and source abstractions, the full command dictionary, and the styled-text document model — all in commonMain, with no platform code.

Link copied to clipboard

Adapts a kotlinx-io Source to the RtfSource the parser reads from, so you can parse straight from a stream without buffering the whole document into a ByteArray first.

Link copied to clipboard

Adapts an Okio BufferedSource to the RtfSource the parser reads from, so you can parse straight from a stream without buffering the whole document into a ByteArray first.

Link copied to clipboard

Turns RTF bytes into events, plain text, or Markdown. This is the module most consumers start with.

Link copied to clipboard

Emits RTF — from the simple styled-text model, from Markdown, or from a rich authoring model with fonts, colors, headings, page breaks, hyperlinks and bookmarks. All output is 7-bit ASCII (non-ASCII escaped as \uN), so the writer has no charset dependency and round-trips cleanly with rtf-reader.