One engine, four editions
PD4ML is a pure-Java layout engine that turns HTML and CSS into production-quality PDF, DOCX and RTF. No browser, no native dependencies, no external rendering service: it runs wherever a JVM does. Every edition can be evaluated free with all features enabled; unlicensed output carries a watermark.
PD4ML STD
HTML/CSS to PDF with headers, footers, bookmarks, links, encryption, vector SVG and MathML. Includes the command-line tool and the PDF post-processing toolkit.
from €100 → PROFESSIONALPD4ML PRO
Adds RTF and image output, font embedding with kerning and ligatures, watermarks, tables of contents, interactive forms, footnotes and attachments.
from €160 → ARCHIVINGPD4ML DMS
Adds DOCX output, PDF/A-1 to PDF/A-4 for long-term archiving, and ZUGFeRD / Factur-X e-invoices.
from €200 → ACCESSIBILITYPD4ML UA
Everything in DMS, plus accessible tagged PDF: PDF/UA-1, PDF/UA-2 and the accessible PDF/A "a" levels.
from €220 →Compare editions
Feature set of PD4ML v4.1.1 for Java. Details and code samples for each feature are in the Programmer's Manual.
| Feature | STD | PRO | DMS | UA |
|---|---|---|---|---|
| CONVERSION AND OUTPUT | ||||
| HTML/CSS to PDFPrint-focused layout engine with deterministic pagination, page breaks, widow/orphan control, Flexbox and CSS Grid. Also accepts arbitrary XML with an XSL stylesheet. | ✓ | ✓ | ✓ | ✓ |
| Convert once, write many formatsA document is parsed and laid out once, then written to any number of outputs (PDF, DOCX, RTF, page images) without re-parsing. | ✓ | ✓ | ✓ | ✓ |
| Vector SVGInline <svg> is drawn as true vector PDF graphics by the built-in renderer. | ✓ | ✓ | ✓ | ✓ |
| MathML<math> formulas rendered through a pluggable JEuclid component. | ✓ | ✓ | ✓ | ✓ |
| HTML/CSS to raster imagesRender pages as BufferedImage objects, PNG byte arrays, or image files written straight to disk. | — | ✓ | ✓ | ✓ |
| HTML/CSS to RTFNested tables and lists; raster images kept as PNG/JPEG or converted to WMF for better compatibility with RTF viewers. | — | ✓ | ✓ | ✓ |
| HTML/CSS to DOCXText and paragraph styles, nested tables, ordered and unordered lists, headers and footers, table of contents, hyperlinks, bookmarks, borders, backgrounds and embedded images. | — | — | ✓ | ✓ |
| Accessible DOCX outputComing soon. | — | — | — | ✓ |
| STANDARDS AND COMPLIANCE | ||||
| PDF version selectionTarget any PDF version from 1.4 to 2.0, including ISO 32000-1 extension levels 1 to 11. | ✓ | ✓ | ✓ | ✓ |
| PDF/A archivingPDF/A-1b, 2b, 2u, 3b, 3u, 4 and 4e for long-term archiving, with all fonts embedded. Conformance is reported after rendering; a strict error policy rejects source that can't meet the target. | — | — | ✓ | ✓ |
| ZUGFeRD and Factur-X e-invoicesPresets for the PDF/A-3 container that carries the machine-readable invoice XML inside a human-readable PDF. | — | — | ✓ | ✓ |
| Accessible PDF/UA and tagged PDFPDF/UA-1, and PDF/UA-2 on PDF 2.0. Headings, tables, links, images and lists are written as tagged structure. | — | — | — | ✓ |
| Accessible PDF/A levelsPDF/A-1a, 2a and 3a, combinable with PDF/UA in a single document, including accessible ZUGFeRD and Factur-X invoices. | — | — | — | ✓ |
| PAGE LAYOUT AND DECORATION | ||||
| Page size, orientation and marginsSet per document or per page range ("1", "2+", "3-7,odd"). | ✓ | ✓ | ✓ | ✓ |
| Scaling and fittingControl the virtual viewport width, auto-fit it to the document's natural width, or shrink the whole layout onto a single page. | ✓ | ✓ | ✓ | ✓ |
| Multi-column pagesLay out content in multiple columns with a configurable gap. | ✓ | ✓ | ✓ | ✓ |
| HTML headers and footersDefined as HTML fragments with images, $[page], $[total], $[title] and your own placeholders, applied to selected pages. | ✓ | ✓ | ✓ | ✓ |
| Page backgroundsHTML or image backgrounds for the whole document or selected pages. | ✓ | ✓ | ✓ | ✓ |
| Inject HTMLAdd a fragment at the start or end of the document body through the API, without rebuilding the source. | ✓ | ✓ | ✓ | ✓ |
| WatermarksAny HTML content with opacity, rotation and scale; choose whether it shows on screen, in print, or both. | — | ✓ | ✓ | ✓ |
| Table of contentsGenerated table of contents with customizable appearance. | — | ✓ | ✓ | ✓ |
| Footnotes and endnotes | — | ✓ | ✓ | ✓ |
| Additional style sheetsOverride hardcoded document styles with extra CSS. | — | ✓ | ✓ | ✓ |
| FONTS AND TYPOGRAPHY | ||||
| Unicode textCorrect shaping for Latin, Cyrillic, CJK, Arabic and Hebrew scripts. | — | ✓ | ✓ | ✓ |
| TrueType/OpenType embeddingEmbed corporate or script-specific fonts, with subsetting to only the glyphs used. Font directories are indexed once, ahead of time. | — | ✓ | ✓ | ✓ |
| Kerning and ligaturesApply the font's kerning pairs and ligature substitutions (fi, fl, ...). | — | ✓ | ✓ | ✓ |
| NAVIGATION AND INTERACTIVITY | ||||
| HyperlinksExternal and internal links in PDF and RTF. | ✓ | ✓ | ✓ | ✓ |
| BookmarksPDF outlines generated from headings or from named anchors. | ✓ | ✓ | ✓ | ✓ |
| Metadata and document actionsCustom document-info entries and PDF-embedded JavaScript actions. | ✓ | ✓ | ✓ | ✓ |
| Interactive PDF formsHTML inputs, selects and text areas become fillable AcroForm fields. | — | ✓ | ✓ | ✓ |
| File attachmentsEmbed user files in the PDF. | — | ✓ | ✓ | ✓ |
| SECURITY | ||||
| Encryption and permissionsOwner password and per-permission control (print, modify, copy, annotate, fill forms, ...), encrypted with RC4 40/128-bit or AES-128/256-bit. | ✓ | ✓ | ✓ | ✓ |
| INTEGRATION AND TOOLS | ||||
| Java APIPure Java, distributed through the PD4ML Maven repository. Source jars are available for debugging integrations. | ✓ | ✓ | ✓ | ✓ |
| Custom resource providersLoad images, styles and fonts from your own sources, such as a database or CMS, through a custom URL scheme. | ✓ | ✓ | ✓ | ✓ |
| DiagnosticsProgress callbacks, adjustable logging, a strict error policy and concurrent resource loading. | ✓ | ✓ | ✓ | ✓ |
Pd4Cmd command-line toolConvert from any environment with a JVM: java -jar pd4ml.jar. | ✓ | ✓ | ✓ | ✓ |
| PD4Browser desktop previewerPreview HTML or SVG and convert it to PDF, RTF or DOCX while working on layout. | ✓ | ✓ | ✓ | ✓ |
| JSP tag libraryStream or save generated documents from JSP pages, for both javax and Jakarta EE 9+ containers. | ✓ | ✓ | ✓ | ✓ |
| IBM Notes/DominoConvert documents fetched over HTTP, or DXL exports through the bundled XSL stylesheet. | ✓ | ✓ | ✓ | ✓ |
| Notes/Domino LZ1-compressed attachments | — | — | ✓ | ✓ |
| PDF POST-PROCESSING TOOLKIT | ||||
| Digital signaturesPKCS#12, PKCS#11, HSM and cloud KMS signing, RFC 3161 timestamps, certification signatures and PAdES-LT/LTV long-term validation. | ✓ | ✓ | ✓ | ✓ |
| MergeCombine page ranges from several PDFs into one, reconciling tagged accessibility structure. | ✓ | ✓ | ✓ | ✓ |
| OptimizeReduce file size by removing unreferenced objects, deduplicating content and collapsing update history. | ✓ | ✓ | ✓ | ✓ |
| XFDF import and exportExchange annotations and form values with other PDF tools via XFDF (ISO 19444-1). | ✓ | ✓ | ✓ | ✓ |
| Low-level PDF editingParse, query and patch the PDF object model directly, written back as incremental updates. | ✓ | ✓ | ✓ | ✓ |
✓ included · — not included
Prices
One-time license fees per edition. Prices are in EUR and do not include EU VAT.
| License | STD | PRO | DMS | UA |
|---|---|---|---|---|
| Single licenseFor one web deployment or one desktop product title (not both). | 100 € | 160 € | 200 € | 220 € |
| incl. source code | — | — | — | — |
| Site licenseUnlimited deployments of software originated by one company division. | — | 1.600 € | 2.300 € | 3.200 € |
| incl. source code | — | — | 6.000 € | 8.000 € |
| Enterprise licenseUnlimited deployments of software originated by all divisions and affiliates of the licensee. | — | 8.000 € | 11.000 € | 16.000 € |
| incl. source code | — | — | 30.000 € | 35.000 € |
PD4ML for .NET
v3 APIPD4ML for .NET is a port of PD4ML v3.8.5+ for Java. It covers HTML/CSS to PDF, RTF and raster images, with the same STD, PRO, DMS and UA editions. A .NET version matching the PD4ML v4 feature set and API is in preparation.
A combined Java + .NET license covers PD4ML for Java (v3 and v4) and PD4ML for .NET (v3).
.NET features by edition
| Feature | STD | PRO | DMS | UA |
|---|---|---|---|---|
| HTML/CSS to PDF | ✓ | ✓ | ✓ | ✓ |
| SVG graphics | ✓ | ✓ | ✓ | ✓ |
| Command-line converter | ✓ | ✓ | ✓ | ✓ |
| Convert a URL or HTML string to a PDF file or stream | ✓ | ✓ | ✓ | ✓ |
| Page format, orientation and margins | ✓ | ✓ | ✓ | ✓ |
| Hyperlinks and bookmarks | ✓ | ✓ | ✓ | ✓ |
| Images and image page backgrounds | ✓ | ✓ | ✓ | ✓ |
| Encryption and read/print permissions | ✓ | ✓ | ✓ | ✓ |
| HTML headers and footers with page numbers, on selected pages | ✓ | ✓ | ✓ | ✓ |
| HTML/CSS to raster images and RTF | — | ✓ | ✓ | ✓ |
| Watermarks | — | ✓ | ✓ | ✓ |
| Table of contents | — | ✓ | ✓ | ✓ |
| PDF forms from HTML | — | ✓ | ✓ | ✓ |
| Footnotes | — | ✓ | ✓ | ✓ |
| Additional style sheets | — | ✓ | ✓ | ✓ |
| PDF attachments | — | ✓ | ✓ | ✓ |
| National character sets and TrueType/OpenType embedding | — | ✓ | ✓ | ✓ |
| PDF/A-1b | — | — | ✓ | ✓ |
| PDF/A-1a (with the v4-based .NET release) | — | — | — | ✓ |
