Package com.nsdev.lettergenerator.model.block
package com.nsdev.lettergenerator.model.block
Content blocks shared by body sections, fixed elements, and visual signatures. The sealed
Block hierarchy supplies flowing text, headings, lists,
images, rich tables, style/keep groups, semantic letter parts, bounded canvases, independent
columns, decorated boxes and document-local component references. Explicit page breaks are
permitted only in body sections. JSON identifies variants with the type property.
Collections are snapshotted into unmodifiable lists, preserving nulls for generation-time validation except for documented optional-list defaults. Images protect their byte arrays with defensive copies. Constructing a block does not validate renderability.
-
ClassDescriptionClosed set of letter content blocks usable in body sections and positioned regions.Rich flowing content with optional independent borders, padding and background color.A fixed-size flow unit containing arbitrary bounded elements in stable paint order.Side-by-side independent rich-content columns, using proportional widths after physical gaps.Reference to a document-local reusable component.Ordered content grouped under common typography and a soft page-keep preference.Text heading kept with the following block on the same page when layout permits.PNG/JPEG/static SVG image scaled proportionally to fit an explicit box in millimeters.Semantic letter content that receives element-specific theme defaults before ordinary layout.Ordered or bulleted list with one sequence of text runs per item.Explicit page boundary in the body flow.Flowing literal text that can wrap and continue across pages.Full-width native table with positive proportional column weights, an optional repeating header and ordered body rows.