Namespace DocWright.Core.Rendering
Classes
- ClipPath
Clip stack operation constraining subsequent primitives to an arbitrary path. The rectangle-only ClipRect remains the cheaper choice for axis-aligned clips; this exists for shape outlines that are not rectangles.
- ClipRect
Clip stack operation used to constrain subsequent primitives to a rectangle.
- FilledRect
A filled rectangle (used for shading and highlights).
- GlyphOrientationGeometry
The layout-space geometry of a GlyphOrientation.
- GlyphRun
A positioned run of text glyphs on a single baseline.
- GradientFill
A gradient interior paint for a VectorPath.
- GradientRamp
The colour ramp Word blends the two stops of a DrawingML gradient with (WQ-0037).
- ImagePlacement
Positioned image primitive (populated in a later phase).
- LayoutDocument
Immutable renderer-agnostic layout result: pages and positioned primitives in twips.
- LayoutPage
One laid-out page.
- LinkRegion
Clickable area associated with a hyperlink target (populated in a later phase).
- PatternFill
A two-colour tiled pattern interior paint for a VectorPath.
- RenderOptions
Options controlling how a renderer serializes a laid-out document. This options bag grows additively; the ILayoutRenderer interface itself never changes within a major version.
- RuleSegment
A stroked segment (used for underline/strikethroughs and borders).
- StructureMark
A logical-structure boundary in paint order: the start or end of one structure element.
- VectorPath
A filled and/or stroked vector path — the primitive shapes and shape groups paint through. Alpha values are in thousandths of a percent (0..100000), matching the DrawingML a:alpha unit and the crop convention on ImagePlacement; a fully transparent paint is omitted rather than drawn.
Structs
- GlyphClusterAdvance
One measured cluster advance within a glyph run.
- GlyphClusterMap
Logical-to-shaped mapping metadata for one rendered cluster.
- GlyphPlacement
Where a shaped glyph sits relative to the pen: the advance the pen moves after it and the offsets it is drawn at, all in twips at the run's size. A combining mark has a zero advance and an offset back over its base; a kerned pair has an advance that is not the glyph's width. Renderers draw the glyph at pen + offset and then move the pen by the advance, along the run's baseline for X and its up direction for Y.
- GradientStop
One stop of a GradientFill.
- VectorPathSegment
One segment of a vector path, in absolute top-down page twips (the RuleSegment convention, not the rect-origin convention of FilledRect). Control points are meaningful only for CubicTo.
Interfaces
- ILaidOutDocument
Marker interface for a fully laid-out document: the immutable result of the layout engine, with every element assigned a page and a position in twips. Renderers consume this seam only — they never see the mutable DOM.
- ILayoutPrimitive
Marker interface for positioned layout primitives.
- ILayoutRenderer
Renders a laid-out document to an output format. The PDF renderer implements this seam today; image renderers (Word-to-Image) plug in tomorrow without core changes.
Enums
- FilledRectKind
Logical type of a filled rectangle.
- GlyphOrientation
The quarter turn applied to a run's baseline, measured clockwise from upright.
- GradientFillKind
How a GradientFill sweeps its stops.
- RuleSegmentKind
What a RuleSegment is, which decides how a renderer puts its thickness on Word's 1/600-inch device grain (WQ-0040, WQ-0054).
- StructureRole
The semantic role of a StructureMark, named after the PDF standard structure type it maps to.
- TableHeaderScope
The header scope of a TableHeaderCell.
- VectorFillRule
How a path's interior is determined.
- VectorLineCap
How stroked subpath ends are drawn.
- VectorLineJoin
How stroked segments meet.
- VectorPathVerb
The drawing verb of one VectorPathSegment.