Feature Showcase
Every document below is rendered by PeachPDF itself when this site is built, so the
output always reflects the current release. Each card pairs the exact HTML given to
PdfGenerator.GeneratePdf with the PDF that came out — open both and compare.
The previews show the first page of each PDF, rendered on Linux with Liberation fonts
(the same font substitution any Linux server without Microsoft fonts would use).
Backgrounds & Borders
CSS Gradients
linear-gradient, radial-gradient, and conic-gradient: directions, angles, multi-stop and hard-stop color lists, and CSS Color Level 4 interpolation spaces.
Border Radius
border-radius from simple uniform rounding to per-corner and elliptical radii, on filled and bordered boxes.
Background Origin & Clip
background-origin and background-clip controlling where a background paints relative to the border, padding, and content boxes.
Background Position & Size
background-position and background-size combinations: keywords, lengths, percentages, cover, and contain.
Border Styles
The full set of CSS border styles, from solid and dashed to groove, ridge, inset, and outset.
Lists & Generated Content
::marker Styling
Styling list markers with the ::marker pseudo-element, including real per-item numbering via the list-item counter.
Paged Media
Paged Media
@page rules with margin boxes, running headers and footers, and page counters, including a url() logo image in a margin box (@top-left-corner).
Per-page Margins
Layout-affecting per-page margins: each page's own @page margins define its content band, so text flows into visibly different-height pages (deep first page, mirrored :left/:right bands) - with relative units (%, em) supported in per-page rules too.
Full-Bleed Pages
An edge-to-edge cover via @page :first { margin: 0 } - the first page's content band is the entire sheet (corner marks touch all four paper edges), followed by a normally margined page.
Layout
Flexbox
Flexbox layout: direction, wrapping, justification, alignment, gaps, flexible item sizing, and replaced elements (img/svg) as flex items.
CSS Values & Functions
Custom Properties
CSS custom properties resolved through var(), including fallbacks and cascading overrides.
Graphics & Effects
SVG
Inline and embedded SVG rendered as true vector PDF content: shapes, paths, gradients, patterns, masks, and text.
Opacity
Element opacity composited as real group transparency over text, images, and nested content.
Typography & Text
Hyphenation — English (en-US)
Automatic hyphenation (hyphens: auto) splitting long words at real, language-appropriate break points in a narrow justified column.
Hyphenation — German (de-DE, reformed orthography default)
Automatic hyphenation (hyphens: auto) splitting long words at real, language-appropriate break points in a narrow justified column.
Hyphenation — French (fr)
Automatic hyphenation (hyphens: auto) splitting long words at real, language-appropriate break points in a narrow justified column.
Hyphenation — Russian (ru, Cyrillic script)
Automatic hyphenation (hyphens: auto) splitting long words at real, language-appropriate break points in a narrow justified column.
Vertical Align
vertical-align behaviors for inline content, from baseline and middle to explicit offsets.
Standards & Accessibility
Tagged PDF (PDF/UA)
Accessible, tagged PDF output: a logical structure tree with headings, lists, tables, alt text, links, and tag-type overrides.
Real-World Documents
Repeating Table Headers
A 60-row sales ledger spanning three pages - the table header repeats automatically on every page, framed by @page margin-box running headers and page counters.
Modern Invoice
A one-page, full-bleed invoice in a dark green palette: custom properties, oklch gradient interpolation, gradient-border cards, zero-padded line numbers via counter(line, decimal-leading-zero), a transform stamp, and an inline SVG logo.
Fonts & Text
@font-face unicode-range
Per-character font matching: a monospaced webfont declared only for the digit range (U+0030-0039) supplies the digits, while letters in the same text run fall back to serif - each character resolved to the family whose unicode-range (or glyph coverage) covers it.