module Celestine::Docs::B_SPEC_REFERENCE::SVG_ELEMENTS

Overview

SVG Elements & Spec Checklist

Celestine aims for high-fidelity compliance with W3C SVG 1.1 and SVG 2 specifications. This reference catalogues all standard SVG elements, their implementation status in Celestine, and their corresponding Crystal classes and DSL methods.

Executive Summary & Key Topics

Topic Method / Anchor Description
Element Parity & Status Matrix .topic_01_element_checklist Element-by-element status table showing implemented, planned, and out-of-scope tags.
Supported Presentation Attributes .topic_02_presentation_attributes Styling and geometric presentation attributes available across drawables.

Related Guides & Source References

Defined in:

docs/b_spec_reference/svg_elements.cr

Class Method Summary

Class Method Detail

def self.topic_01_element_checklist : Nil #

Element Parity & Status Matrix: Element-by-element status table showing implemented, planned, and out-of-scope tags.

Status SVG Tag Celestine Class DSL Helper Notes
✓ `` `Celestine::Anchor` `ctx.anchor` Hyperlink container
✓ `` `Celestine::Animate` `shape.animate` SMIL attribute animation
✓ `` `Celestine::Animate::Motion` `shape.animate_motion` Motion path animation
✓ `` `Celestine::Animate::Transform::*` `shape.animate_transform_*` Rotate, scale, translate, skew
✓ `` `Celestine::Circle` `ctx.circle` cx, cy, r, diameter
^ `` Planned `ctx.clip_path` Vector path clipping
✓ `` Handled implicitly `ctx.define` / `define: true` Collected into `` buffer
✓ `` `Celestine::Ellipse` `ctx.ellipse` cx, cy, rx, ry
✓ `` `Celestine::Group` `ctx.group` Structural grouping container
✓ `` `Celestine::Image` `ctx.image` Bitmap/vector image embed
✓ `` `Celestine::Line` `ctx.line` x1, y1, x2, y2
✓ `` `Celestine::Gradient::Linear` `ctx.linear_gradient` Linear color transitions
✓ `` `Celestine::Marker` `ctx.marker` Arrowheads and path markers
✓ `` `Celestine::Mask` `ctx.mask` Alpha & luminance masking
✓ `` `Celestine::Path` `ctx.path` Full SVG 1.1 path command support
✓ `` `Celestine::Pattern` `ctx.pattern` Repeated visual tile patterns
✓ `` `Celestine::Polygon` `ctx.polygon` Closed multi-point shapes
✓ `` `Celestine::Polyline` `ctx.polyline` Open multi-point stroke lines
✓ `` `Celestine::Gradient::Radial` `ctx.radial_gradient` Radial color transitions
✓ `` `Celestine::Rectangle` `ctx.rectangle` x, y, width, height, rx, ry
✓ `` `Celestine::Gradient::Stop` `grad.stop` Gradient color stops
✓ `` `Celestine::Svg` `Celestine.draw` Document root & nested viewports
✓ `` `Celestine::Text` `ctx.text` Typography & layout attributes
✓ `` `Celestine::Use` `ctx.use` Reusable element instantiator
^ `` Planned `ctx.symbol` Reusable icon symbols with viewBox
^ `` Planned `text.tspan` Inline sub-string text styling
^ `` Planned `text.text_path` Text aligned along curved path
^ `