pub struct RectNode {Show 44 fields
pub id: String,
pub name: Option<String>,
pub role: Option<String>,
pub x: Option<PropertyValue>,
pub y: Option<PropertyValue>,
pub w: Option<PropertyValue>,
pub h: Option<PropertyValue>,
pub radius: Option<PropertyValue>,
pub radius_tl: Option<PropertyValue>,
pub radius_tr: Option<PropertyValue>,
pub radius_br: Option<PropertyValue>,
pub radius_bl: Option<PropertyValue>,
pub style: Option<String>,
pub fill: Option<PropertyValue>,
pub stroke: Option<PropertyValue>,
pub stroke_width: Option<PropertyValue>,
pub stroke_alignment: Option<String>,
pub stroke_dash: Option<PropertyValue>,
pub stroke_gap: Option<PropertyValue>,
pub stroke_linecap: Option<String>,
pub border_top: Option<PropertyValue>,
pub border_bottom: Option<PropertyValue>,
pub border_left: Option<PropertyValue>,
pub border_right: Option<PropertyValue>,
pub border_width: Option<PropertyValue>,
pub stroke_outer: Option<PropertyValue>,
pub stroke_outer_width: Option<PropertyValue>,
pub shadow: Option<PropertyValue>,
pub filter: Option<PropertyValue>,
pub mask: Option<PropertyValue>,
pub blend_mode: Option<String>,
pub blur: Option<Dimension>,
pub opacity: Option<f64>,
pub visible: Option<bool>,
pub locked: Option<bool>,
pub rotate: Option<Dimension>,
pub anchor: Option<String>,
pub anchor_zone: Option<String>,
pub anchor_sibling: Option<String>,
pub anchor_edge: Option<String>,
pub anchor_gap: Option<Dimension>,
pub anchor_parent: Option<bool>,
pub source_span: Option<Span>,
pub unknown_props: BTreeMap<String, UnknownProperty>,
}Expand description
A rect node.
Fields§
§id: String§name: Option<String>§role: Option<String>§x: Option<PropertyValue>§y: Option<PropertyValue>§w: Option<PropertyValue>§h: Option<PropertyValue>§radius: Option<PropertyValue>§radius_tl: Option<PropertyValue>Per-corner radius overrides (top-left, top-right, bottom-right, bottom-left).
When Some, the value overrides the uniform radius for that corner only.
When None, the uniform radius applies. All four are None for existing docs.
radius_tr: Option<PropertyValue>§radius_br: Option<PropertyValue>§radius_bl: Option<PropertyValue>§style: Option<String>§fill: Option<PropertyValue>§stroke: Option<PropertyValue>§stroke_width: Option<PropertyValue>§stroke_alignment: Option<String>§stroke_dash: Option<PropertyValue>Dash segment length in pixels; None = solid stroke.
stroke_gap: Option<PropertyValue>Gap length in pixels between dashes; defaults to stroke_dash when absent.
stroke_linecap: Option<String>Dash end-cap style: "butt" (default), "round", or "square".
border_top: Option<PropertyValue>Per-side border color for the top edge. Token-required (color token).
When Some, a StrokeLine is emitted along the top edge of the rect.
border_bottom: Option<PropertyValue>Per-side border color for the bottom edge. Token-required (color token).
border_left: Option<PropertyValue>Per-side border color for the left edge. Token-required (color token).
border_right: Option<PropertyValue>Per-side border color for the right edge. Token-required (color token).
border_width: Option<PropertyValue>Shared border width for per-side borders. Token-required (dimension).
Falls back to stroke_width, then to 1px when absent.
stroke_outer: Option<PropertyValue>Outer stroke color: a SECOND stroke painted OUTSIDE the rect geometry.
Token-required (color token). When Some, a StrokeRect /
StrokeRoundedRect is emitted at outset geometry in addition to the
primary stroke. None → no outer stroke (byte-identical).
stroke_outer_width: Option<PropertyValue>Outer stroke width for stroke_outer. Token-required (dimension).
Defaults to 1px when absent. Only effective when stroke_outer is set.
shadow: Option<PropertyValue>Drop shadow / outer glow, as a (token) ref to a shadow token.
filter: Option<PropertyValue>Color/image filter ops, as a (token) ref to a filter token.
mask: Option<PropertyValue>Spatial coverage mask, as a (token) ref to a mask token.
blend_mode: Option<String>Compositing blend mode: "normal" (default) or one of the 11 separable
blends (multiply, screen, overlay, …). None/"normal" render
source-over (byte-identical to having no blend).
blur: Option<Dimension>Gaussian blur radius applied to the node’s own rendered ink (sigma in
the declared unit, resolved to pixels at compile time). None / 0 →
no blur (byte-identical to having no attribute).
opacity: Option<f64>§visible: Option<bool>§locked: Option<bool>§rotate: Option<Dimension>§anchor: Option<String>Page-relative placement anchor (one of the nine named positions, e.g.
"bottom-right"). When present and recognized, the compile step derives
the node’s x and/or y from the page and node dimensions. An explicitly-
authored x or y always wins.
anchor_zone: Option<String>Optional safe-zone reference for the anchor. When Some(id) and a
safe-zone with that id is declared on the page, the anchor is resolved
relative to that zone’s rectangle instead of the full page. Requires
anchor to be set; anchor_zone without anchor has no effect and
triggers an anchor.zone_without_anchor warning.
anchor_sibling: Option<String>Optional sibling node id for sibling-relative anchor positioning.
Requires anchor to be set; anchor_sibling without anchor has no
effect and triggers an anchor.sibling_without_anchor warning.
anchor_edge: Option<String>Adjacent-placement edge relative to anchor-sibling: above/below/before/after.
When Some, positions this node’s corresponding edge flush to the named
edge of anchor-sibling. Requires anchor-sibling to be set.
anchor_gap: Option<Dimension>Gap (px) between this node and its anchor-sibling edge when anchor-edge is set.
A positive value pushes the node away from the sibling; negative pulls it closer.
anchor_parent: Option<bool>Parent-relative anchor toggle. When Some(true) AND a recognized
anchor is present (and anchor_zone is absent), the anchor is
resolved relative to this node’s DIRECT PARENT CONTAINER’s box (a frame
or group) instead of the full page. An explicitly-authored x/y still
wins. anchor_zone takes precedence when both are set. Requires the node
to be inside a frame/group with a usable box; otherwise the validator
emits anchor.unresolvable_parent. anchor_parent without anchor
triggers an anchor.parent_without_anchor warning. None/Some(false)
keeps page/zone-relative behavior (byte-identical).
source_span: Option<Span>Source declaration span, when available.
unknown_props: BTreeMap<String, UnknownProperty>Unknown properties preserved for forward-compat.