Skip to content

Latest commit

 

History

History
89 lines (69 loc) · 5.19 KB

File metadata and controls

89 lines (69 loc) · 5.19 KB

Capabilities

A one-glance map of what GraphCompose can do, the main API for each, and its stability tier. "Stability" rows use the tiers defined in the API stability policy; "Guide" links to the page that shows it in context.

This is a feature catalogue, not the contract — the API stability policy is authoritative for what each tier promises, and canonical ⇄ legacy parity tracks what is Partial or Planned.


Authoring

Capability Main API Stability Guide
Open a document session GraphCompose.document(...)DocumentSession Stable Your first document
Describe content in reading order pageFlow(...), module(...), addSection(...) Stable Getting started
Maintained document templates InvoiceTemplateV2, ProposalTemplateV2, cv.v2.*, coverletter.v2.* Stable Templates
Reusable building blocks (helpers) helper methods / widgets over the DSL Stable Diagrams
Custom node / backend NodeDefinition, render-handler SPI, FixedLayoutBackend Extension SPI (@Beta) Extending

Content

Capability Main API Stability Guide
Paragraphs & rich inline text addParagraph(...), addRich(...), RichText Stable Recipes — rich text
Lists (flat & nested) addList(...), ListBuilder Stable Recipes
Tables (spans, zebra, totals, repeat header) addTable(...), DocumentTableCell Stable Advanced tables
Raster images addImage(...), fit modes Stable Shapes & images
Vector shapes, dividers, lines addShape(...), addLine(...), addEllipse(...) Stable Shapes
Charts (bar / line / pie) chart(ChartSpec...), ChartData Stable Charts
Barcodes & QR addBarcode(...) Stable Recipes

Layout

Capability Main API Stability Guide
Columns that still flow addRow(row -> row.weights(...)) Stable Layered page design
Page-wide fills / bands pageBackground(...), pageBackgrounds(...) Stable Page backgrounds
Overlap & alignment addLayerStack(...) Stable Layered page design
Shape-as-container addContainer(...), addCircle(...), addEllipse(...) Stable Shape as container
Fixed (x, y) placement addCanvas(w, h, canvas -> canvas.position(...)) Stable Absolute placement
Bleed to page edge bleedToEdge(...) Stable Page backgrounds
Transforms (rotate / scale) DocumentTransform Stable Transforms

Output & testing

Capability Main API Stability Guide
Write a PDF file buildPdf(), buildPdf(Path) Stable Getting started
Stream to a caller-owned stream writePdf(OutputStream) Stable Streaming
In-memory bytes toPdfBytes() Stable Getting started
Editable Word (semantic) export(new DocxSemanticBackend()) Stable (semantic, not PDF parity) Troubleshooting
PDF chrome (metadata / watermark / header / footer / protection) metadata(...), watermark(...), header(...), footer(...), protect(...) Stable Getting started
Layout snapshot regression LayoutSnapshotAssertions.assertMatches(...) Stable Layout snapshot testing
Visual (pixel) regression PdfVisualRegression Stable Layout snapshot testing
Render-only debug overlays guideLines(...), debug(...) Stable Getting started

Navigation

Capability Main API Stability Guide
External links addLink(...), inlineLink(...) Stable Getting started
Internal jumps anchor("x") + linkTo("x") Stable Getting started
PDF outline bookmarks bookmark(new DocumentBookmarkOptions(...)) Stable Getting started

New in 1.9.0

These ship from 1.9.0 onward — confirm your dependency version before relying on them:

Capability Main API
Printed page references addPageReference("anchor")
Generated Table of Contents addTableOfContents(toc -> toc.entry(...))
Page preview images toImage(pageIndex, dpi), toImages(dpi)

See also