Skip to content

Tagged PDFs and the EU Accessibility Act

Tagged structure gives assistive technology headings, reading order, and alternative-text fields. For documents within scope, EU accessibility rules make that structure a requirement. NextPDF emits the structure.

Open a typical generated PDF in a screen reader and it may say almost nothing. Visually, it may be a perfect invoice. Structurally, it can be a collection of glyphs placed at coordinates. A tagged structure tree supplies roles such as “heading,” “table,” and “total” to assistive technology.

Tagging adds a parallel structure tree—headings, paragraphs, tables, lists, reading order, and alternative text—so the meaning travels with the document. The conformance standard is PDF/UA (ISO 14289).

Why this is now a requirement, not a nice-to-have

The European Accessibility Act extends accessibility obligations to a broad set of products and services across the EU. For many organisations, customer documents such as statements, contracts, and reports fall within scope.

For documents within scope, your PDF engine needs to emit tagged structure.

How NextPDF emits tagged structure

Enable tagged output and NextPDF builds the structure tree while it renders your HTML. It maps headings, tables, lists, and links to their structure elements and tracks reading order:

tagged.php
use NextPDF\Core\Document;

$doc = Document::createStandalone();
$doc->enableTaggedPdf(); // build the structure tree as we render
$doc->addPage();
$doc->writeHtml($semanticHtml);
$doc->save('accessible.pdf');

With tagging enabled, an <a href> in your HTML becomes a clickable annotation bound to a /Link structure element. Assistive technology can then announce it as a link. Headings, tables, and lists map to their structural counterparts in the same way. Richer, more semantic HTML produces better tagged output.

PDF/UA requires a document language so a screen reader knows how to pronounce the text. Set it in the document configuration and the engine carries it into the output.

Tagged structure and editorial responsibility

NextPDF emits output that targets PDF/UA and gives you a file you can validate with veraPDF (verapdf --flavour ua1 accessible.pdf). The engine builds the tag tree. You decide whether the alternative text is meaningful, the reading order matches your intent, and the document serves a screen-reader user.

NextPDF builds the tagged structure; meaningful content comes from the document input and editorial review. veraPDF reports the file-level profile result. For documents within the Accessibility Act’s scope, tagged output is a legal obligation.

  • See tagged output you can validate: showcase.
  • The use cases this unlocks: use cases.
  • Generate a tagged PDF in five minutes: /try.