Package-level declarations
Types
Zero-size marker registering a named jump target at the marker's rendered position. Pair with InternalLinkNode to build clickable cross-references and tables of contents.
A Code 128 barcode rendered as vector bars.
The 1D barcode symbology a BarcodeNode is encoded with.
Zero-size marker that adds an entry to the document outline (the bookmark sidebar in PDF readers) pointing at the marker's rendered position.
A single child inside a BoxNode together with its anchor point.
Z-stacking container. Children are drawn in source order — first added appears at the bottom, last on top. Each child is positioned at one of the nine BoxAlignment anchor points within the box's interior.
Background, border, padding, and corner-radius decoration shared by every container (ColumnNode, RowNode, BoxNode).
Horizontal divider rendered as a single horizontal stroke spanning the available width.
Resolved, immutable description of a document. Produced by the DSL builders and consumed by the layout engine + renderer. Library users normally never see this type — they go through pdf { ... } instead.
An interactive AcroForm checkbox.
Wraps child in a clickable region that jumps to the AnchorNode registered under anchorId. Forward references are fine — the target anchor may appear later in the document. Links to anchors that never get registered are silently inert.
Wrapper that forbids the page-break machinery from splitting child: under the Slice strategy the wrapped content behaves like MoveToNextPage — it moves to a fresh page whole instead of being cut at an arbitrary line. The CSS equivalent is break-inside: avoid.
Newspaper-style multi-column flow: children are measured at the column width and distributed left-to-right into count equal-width columns, balanced so the columns end up roughly the same height.
Context passed to a page's header / footer builder. Lets the builder vary the rendered content per physical page — typically to inject the current page number or the document's total page count.
One logical page in the source DSL. May expand into multiple physical PDF pages at render time when content overflows.
A QR code symbol rendered as crisp vector squares — no rasterisation, so it scans reliably at any print size.
Geometric primitive — a circle or ellipse drawn as a filled and / or stroked shape. Use the com.conamobile.pdfkmp.dsl.ContainerScope.circle / com.conamobile.pdfkmp.dsl.ContainerScope.ellipse DSL functions rather than constructing this directly.
One contiguous run of text with a single style. Spans are the basic building block of RichTextNode — they let one paragraph mix bold, italic, coloured, or otherwise differently styled segments without breaking out of a single shared line-wrap pass.
One cell of a TableRowNode.
Tabular layout: a fixed sequence of columns and a stream of rows whose cells line up underneath them.
One physical row of a TableNode. The number of cells should match the number of TableNode.columns; if a row has fewer cells the trailing columns render as empty, and extra cells are ignored.
Vector graphic — an SVG / Android <vector> icon embedded into the document at the requested rendered size.
Per-vector stroke override applied at draw time. Lets the caller drop or recolour stroke outlines without re-authoring the source XML.
Wrapper that gives child a fractional share of the parent container's remaining space along the main axis.