PDF1 through PDF23
WCAG 2.2 PDF Techniques
WCAG’s PDF Techniques are best-practice guidance for meeting Web Content Accessibility Guidance (WCAG) in PDF documents. simplA11yPDF can verify or partially verify whether many of these techniques have been correctly applied.
-
Strong coverage. Distinguishes missing /Alt, empty /Alt, non-empty /Alt, and ActualText-only. Detects image-backed figures through marked-content MCIDs. Cannot judge whether alt text is semantically meaningful.
View PDF1 technique ↗ -
Verifies bookmark presence for documents over 20 pages. Does not verify that bookmarks link to the correct sections.
View PDF2 technique ↗ -
Recognizes artifact scope for text-showing content and avoids failing artifacted content. Does not fully verify decorative image artifacting.
View PDF4 technique ↗ -
Validates table hierarchy, row/cell parentage, headers, and row regularity warnings.
View PDF6 technique ↗ -
Detects likely image-only PDFs by checking for fonts and text objects. Does not perform OCR or verify OCR accuracy.
View PDF7 technique ↗ -
Catches skipped heading levels, plain H tags, first heading not H1, and missing headings in tagged documents.
View PDF9 technique ↗ -
Verifies programmatic field descriptions such as /TU tooltip metadata. Does not check visual label positioning.
View PDF10 technique ↗ -
Identifies annotation-to-structure linkage via /StructParent, /ParentTree, and matching /OBJR. Does not verify link text quality or keyboard activation.
View PDF11 technique ↗ -
Detects field type, descriptions, widgets, and page association. Does not verify full accessibility API value/state.
View PDF12 technique ↗ -
Can catch header/footer-like text that is untagged or not artifacted. Does not verify consistency.
View PDF14 technique ↗ -
Verifies that /Lang exists and is a valid language tag.
View PDF16 technique ↗ -
Strong direct coverage. Verifies title presence and DisplayDocTitle flag.
View PDF18 technique ↗ -
Covers the resulting structural condition: correct table cells, headers, and spans.TablesTest table structure model headers parentageView PDF20 technique ↗
-
Validates L, LI, Lbl, LBody relationships. Intentionally allows some Adobe-compatible patterns.
View PDF21 technique ↗ -
Detects interactive form fields, widgets, and descriptions. Does not test keyboard operation.
View PDF23 technique ↗
vs Adobe’s PDF Accessibility Checker
Adobe Acrobat Pro comparison
Adobe’s PDF Accessibility checker is the industry standard but requires a paid license or a paid API key. The table below shows every automatic check Adobe performs and whether simplA11yPDF the same ground.
| Check | Adobe Acrobat | simplA11yPDF |
|---|---|---|
| Document | ||
| Accessibility permission flag | ✓ Yes | ✓ Yes |
| Image-only PDF detection | ✓ Yes | ✓ Yes |
| Tagged PDF | ✓ Yes | ✓ Yes |
| Logical reading order | Manual only | Manual only |
| Primary language | ✓ Yes | ✓ Yes |
| Document title | ✓ Yes | ✓ Yes |
| Bookmarks | ✓ Yes | ✓ Yes |
| Color contrast | Manual only | Manual only |
| Page Content | ||
| Tagged content | ✓ Yes | ✓ Yes |
| Tagged annotations | ✓ Yes | ~ Partial |
| Tab order | ✓ Yes | ✗ No |
| Character encoding | ✓ Yes | ✗ No |
| Tagged multimedia | ✓ Yes | ✗ No |
| Screen flicker | ✓ Yes | ✗ No |
| Scripts | ✓ Yes | ✗ No |
| Timed responses | ✓ Yes | ✗ No |
| Navigation links | ✓ Yes | ~ Partial |
| Forms | ||
| Tagged form fields | ✓ Yes | ~ Partial |
| Field descriptions | ✓ Yes | ✓ Yes |
| Alternate Text | ||
| Figures alternate text | ✓ Yes | ✓ Yes |
| Nested alternate text | ✓ Yes | ✓ Yes |
| Associated with content | ✓ Yes | ~ Partial |
| Hides annotation | ✓ Yes | ~ Partial |
| Other elements alternate text | ✓ Yes | ✗ No |
| Tables | ||
| Row structure (TR) | ✓ Yes | ✓ Yes |
| TH and TD cells | ✓ Yes | ✓ Yes |
| Table headers | ✓ Yes | ✓ Yes |
| Row/column regularity | ✓ Yes | ✓ Yes |
| Lists | ||
| List items (LI parentage) | ✓ Yes | ✓ Yes |
| Lbl and LBody structure | ✓ Yes | ✓ Yes |
| Headings | ||
| Appropriate nesting | ✓ Yes | ✓ Yes |