Accessibility and archiving

edit

Some documents must follow a standard: PDF/UA for documents that everyone, including people who use assistive technologies, can read, and PDF/A for archives. Set the level on the document, and the save checks what it can of the rules of the level and writes what the level needs:

PropertyLevelsPage
PdfDocument.PdfUAConformancePdfUA1, PdfUA2Tagged PDF and PDF/UA
PdfDocument.PdfAConformancePdfA1B, PdfA1A, PdfA2B, PdfA2U, PdfA2A, PdfA3B, PdfA3U, PdfA3A, PdfA4, PdfA4E, PdfA4FPDF/A

Both can be combined, for an accessible archived document: PDF/A-2a and PDF/UA-1 in the example of Tagged PDF and PDF/UA.

What the save checks, and what it does not

The save checks what concerns the document as a whole (a title, a language, embedded fonts, no encryption, the structure tree). When a rule is broken, it throws an InvalidOperationException whose message lists every rule that is broken. It writes the identification of the level in the XMP metadata, the output intent of PDF/A, and the viewer preferences of PDF/UA.

The content itself must follow the other rules of the level: the reading order of the structure, the alternate descriptions of the figures, the colors. The library's own tests validate the documents it writes with veraPDF, the reference validator; validate your documents with it too when conformance matters.

In this section

  • Tagged PDF and PDF/UA: the structure tree, artifacts, alternate descriptions, PDF/UA-1 and PDF/UA-2.
  • PDF/A: the levels, what each requires, and attached files of PDF/A-3.