Skip to content

v0.6.0

Choose a tag to compare

@danmolitor danmolitor released this 03 Mar 14:29
· 696 commits to main since this release

Note: v0.5.0 was an internal milestone. There is no published v0.5.0 release.

Text Engine

  • OpenType shaping via rustybuzz — ligatures, kerning, mark positioning (GSUB/GPOS)
  • Knuth-Plass optimal line breaking with greedy fallback
  • Unicode line breaking (UAX#14) for correct CJK, Thai, and punctuation breaks
  • Hyphenation for 35+ languages via hypher dictionaries
  • BiDi text — full Unicode Bidirectional Algorithm support for mixed LTR/RTL content
  • Per-character font fallback — fontFamily: "Inter, NotoSansArabic, NotoSansSC" resolves per-glyph, not per-block
  • Font fallback chains — comma-separated fontFamily tries each family in order
  • Text overflow — textOverflow: 'ellipsis' and 'clip' for single-line truncation

Layout

  • CSS Grid — track sizing (fr, px, auto), explicit placement (gridColumn, gridRow), gap, repeat() syntax
  • overflow: hidden — clips children to parent bounds via PDF clip path
  • Cross-axis stretch propagation — alignItems: stretch now correctly enables justifyContent and flexGrow inside stretched children

Drawing

  • Canvas — <Canvas draw={(ctx) => { ... }} /> for arbitrary vector graphics (arcs, beziers, fills, strokes)
  • Charts — , , components (pure React, no engine changes)
  • Watermarks — with rotation, opacity, and color
  • QR codes — renders native vector (not raster)
  • SVG arc paths — A/a commands now supported (W3C F.6.5/F.6.6 spec)

Accessibility & Standards

  • Tagged PDF / PDF/A-2a — structure tree, role mapping, XMP metadata, Unicode CMap
  • Document language — emits /Lang in PDF catalog
  • Alt text — alt prop on and
  • Clickable images/SVGs — href prop for link annotations

Integration Packages

  • @formepdf/resend — render and email PDFs in one call; returns Resend's { data, error } directly
  • @formepdf/next — Next.js API route handler
  • @formepdf/hono — Hono middleware
  • @formepdf/mcp — MCP server for AI-powered PDF generation

Other

  • CSS border/padding/margin string shorthands (border: "1px solid #000", padding: "8 16")
  • grid repeat() syntax (repeat(3, 1fr))
  • rgba()/rgb() color parsing
  • Visual regression test infrastructure