Package-level declarations
Types
KiteCanvas backed by a Compose Multiplatform DrawScope.
Platform-supplied image decoder. KitePDF's core stays pure-Kotlin-stdlib; actual JPEG / PNG / etc. decoding rides on whatever the host platform already provides: Skia on Desktop, the OS framework on Android / iOS, createImageBitmap on JS.
Platform-supplied image decoder. KitePDF's core stays pure-Kotlin-stdlib; actual JPEG / PNG / etc. decoding rides on whatever the host platform already provides: Skia on Desktop, the OS framework on Android / iOS, createImageBitmap on JS.
Platform-supplied image decoder. KitePDF's core stays pure-Kotlin-stdlib; actual JPEG / PNG / etc. decoding rides on whatever the host platform already provides: Skia on Desktop, the OS framework on Android / iOS, createImageBitmap on JS.
Platform-supplied image decoder. KitePDF's core stays pure-Kotlin-stdlib; actual JPEG / PNG / etc. decoding rides on whatever the host platform already provides: Skia on Desktop, the OS framework on Android / iOS, createImageBitmap on JS.
Platform-supplied image decoder. KitePDF's core stays pure-Kotlin-stdlib; actual JPEG / PNG / etc. decoding rides on whatever the host platform already provides: Skia on Desktop, the OS framework on Android / iOS, createImageBitmap on JS.
Platform-supplied image decoder. KitePDF's core stays pure-Kotlin-stdlib; actual JPEG / PNG / etc. decoding rides on whatever the host platform already provides: Skia on Desktop, the OS framework on Android / iOS, createImageBitmap on JS.
Platform-supplied image decoder. KitePDF's core stays pure-Kotlin-stdlib; actual JPEG / PNG / etc. decoding rides on whatever the host platform already provides: Skia on Desktop, the OS framework on Android / iOS, createImageBitmap on JS.
A PdfViewState.hitTest result: the page under a viewport point and the point in that page's own space (PDF: user space, y-up from the display box's bottom-left with rotation unfolded; EPUB: the page's document space).
One entry of PdfViewState.highlights: where to paint (hit) plus how to paint it.
Which page margin an edge marker is painted in.
Imperative page → ImageBitmap pipeline. This is the raster engine behind PdfView; it is public so apps with custom viewers (own pagers, thumbnail grids, PNG export jobs) don't have to re-implement the CTM/flip/hairline math themselves.
How PdfView turns pages into pixels. Pick a variant; each carries only the knobs that actually apply to it, so there are no settings that silently do nothing. Defaults to Rasterized via PdfRenderSpec.Default.
Which end of the selection a handle marks, in reading order.
Draws one selection boundary marker ("thumb") for PdfView.
Default look of PdfSelectionMenu's built-in chrome.
One action in a PdfSelectionMenu: a label, an optional leading icon slot, and what to do with the selected text.
Colours used by PdfView.
Observable state + control surface of a PdfView.
A finalized or in-progress text selection on one page (cross-page selection is out of scope). start/end are INCLUSIVE flattened char indices into the page's io.github.yuroyami.kitepdf.core.KiteStructuredText reading order; text carries \n/\n\n line/block separators exactly like the extraction text; quads are display-space, one per line touched.
Functions
Encode this ImageBitmap to PNG bytes, the "saveable image" counterpart of PdfView's onPageRendered callback. Write the result to a file, share it, upload it; PNG is lossless so the export is pixel-identical to what was on screen.
Encode this ImageBitmap to PNG bytes, the "saveable image" counterpart of PdfView's onPageRendered callback. Write the result to a file, share it, upload it; PNG is lossless so the export is pixel-identical to what was on screen.
Encode this ImageBitmap to PNG bytes, the "saveable image" counterpart of PdfView's onPageRendered callback. Write the result to a file, share it, upload it; PNG is lossless so the export is pixel-identical to what was on screen.
Encode this ImageBitmap to PNG bytes, the "saveable image" counterpart of PdfView's onPageRendered callback. Write the result to a file, share it, upload it; PNG is lossless so the export is pixel-identical to what was on screen.
Encode this ImageBitmap to PNG bytes, the "saveable image" counterpart of PdfView's onPageRendered callback. Write the result to a file, share it, upload it; PNG is lossless so the export is pixel-identical to what was on screen.
Encode this ImageBitmap to PNG bytes, the "saveable image" counterpart of PdfView's onPageRendered callback. Write the result to a file, share it, upload it; PNG is lossless so the export is pixel-identical to what was on screen.
Encode this ImageBitmap to PNG bytes, the "saveable image" counterpart of PdfView's onPageRendered callback. Write the result to a file, share it, upload it; PNG is lossless so the export is pixel-identical to what was on screen.
Convenience viewer for a reflowed EpubDocument: opens the whole book as a continuous vertical scroll, or a single page. Delegates to the shared PdfView renderer. Pages are rasterized once per (page, size) bucket and drawn as images, exactly like PDF.
Previous / "x of y" / next pill. Buttons auto-disable at the ends.
A navigation panel over the document's outline (PDF bookmarks / EPUB table of contents): an indented, clickable column of KiteOutlineItems. Clicking an entry with a resolved page scrolls there (and calls onNavigate); entries without one (unresolvable destinations, grouping labels) render dimmed and unclickable. Plain foundation styling, like every widget here.
"current / total" page readout. Recomposes as the user scrolls or swipes.
The selection context menu: place it in PdfView's overlay slot and it appears whenever text is selected, listing items and, when highlightColors is non-empty, a wrapping row of colour swatches.
Convenience entry point: remembers its own state internally.
THE KitePDF viewer composable.
Remembers a PdfViewState for an EPUB document. Hoist it to drive an EpubView (or the shared PdfView state overload) from navigation buttons, a page indicator, a HUD. The state object is the single point of control.
PdfRasterizer wired to the composition's density, layout direction and font resolver.
Remembers a PdfViewState for document. Hoist it to drive a PdfView from anywhere: navigation buttons in your top bar, a zoom slider, a HUD overlay. The state object is the single point of control.