Summary
This page summarizes WCAG 2.1 AA standards for creating accessible PDFs. If any conflict exists, follow the WCAG documentation.
Best Practices
Create your document in Microsoft Word, using built-in features for lists, headings, tables, etc, then export to PDF.
Simplify charts, tables and graphs to the best of your ability. Only use built-in features to create these items, and provide alternative methods of accessing the content where possible.
Details
All PDF Types
Using a PDF editor, check that a text alternative is displayed for each image.
For an image that is purely decorative, make sure the decorative image is marked as an artifact.
Procedure
Check that the Bookmarks panel displays bookmarks.
Check that the bookmarks link to the correct sections in the document.
- Procedure(forms only)
Verify that the content is in the correct reading order
by one of the following:Read the PDF document with a screen reader or a tool that reads aloud, listening to hear that each element is read in the correct order.
Use a tool that exposes the document through the accessibility API, and verify that the reading order is correct.
Verify that the tab order is correct for focusable content by one of the following:
Use the tab key to traverse the focus order in the document.
Use a tool that is capable of showing the page object entry that specifies the tab order setting to open the PDF document and view the setting.
Procedure
For an image that is purely decorative, use one of the following to verify that it is marked as an artifact:
Read the PDF document with a screen reader, listening to hear that the decorative image is not announced when reading the content line-by-line.
Using a PDF editor, make sure the decorative image is marked as an artifact.
Reflow the document and make sure the decorative image does not appear on the page.
Use a tool that is capable of showing the /Artifact entry or property list, such as aDesigner, to open the PDF document and verify that decorative images are marked as artifacts.
Use a tool that exposes the document through the accessibility API and verify that the decorative image is not exposed through the API.
For each table, confirm that the appropriate TR, TH, and TD tags are in the proper reading order and hierarchy in the table tree.
For each page converted to text using OCR, ensure that the resulting PDF has been converted correctly, via manual review in ABBYY Finereader.
Verify that the first occurrence of abbreviations that require expansion text have /E entries on an enclosing tag by one of the following and that both the abbreviation and the expansion text are provided:
In Windows, use Microsoft's Inspect.exe tool, or some other tool that allows inspection of the MSAA interface, to locate the text of the abbreviation in the document tree and ensure that the value of the abbreviation is in the expansion text.
In a PDF editor, locate the tag for the text that is the abbreviation, and check that an expansion or definition is provided for each abbreviation in the Expansion Text field in the corresponding tag's properties.
For all PDF content that is divided into separate sections, use a PDF editor to make sure the headings are tagged correctly.
For each hyperlink, verify that the link is correctly tagged and the link text is properly exposed.
For the hyperlink, verify that the alternate link text is properly coded.
Check that running headers and/or footers are provided and contain information to help users locate themselves within the document (such as page numbers or chapter numbers).
If section headers are used in the running header or footer, check that the section header and the running header or footer are consistent.
Verify that the default language for the document is correctly specified.
Verify that the language of a passage, phrase, or word that differs from the language of the surrounding text is correctly specified by a /Lang entry on an enclosing tag or container.
For every section in the document that uses a different pagination format, check that the page navigation feature uses the same format used on the document pages.
Verify that the title for the document is correctly specified and displayed in the title bar.
For a table that has been repaired with the Table Editor, confirm one of the following:
Using a PDF editor, verify that the appropriate TR, TH, and TD tags are in the proper reading order and hierarchy in the table tree.
Inspect the tag tree to verify that the list is structured correctly.
PDF Forms
Forms require additional attention to accessibility measures. Incorporate all of the above content, plus the following.
Procedure
For each form field that is required, verify that validation information and instructions are provided by applying the following:
Check that the required status is indicated in the form control's label.
Leave the field blank and submit the form. Check that an alert describing the error is provided.
Use a tool that exposes the document through the accessibility API, and verify that the required property is indicated.
Procedure
For each table, confirm one of the following:
Read the PDF document with a screen reader, listening to hear that the tabular information is presented in a way that preserves logical relationships among the table header and data cells.
Using a PDF editor, verify that the appropriate TR, TH, and TD tags are in the proper reading order and hierarchy in the table tree.
Use a tool which is capable of showing the table elements to open the PDF document, view the table structure, and verify that it contains the appropriate TR, TH, and TD structures
form control, verify visually that the label is positioned correctly in relation to the control.
For each form control, verify that the name is programmatically associated with the control by one of the following:
Open the PDF document with a tool that is capable of showing the name associated with the control and verify that the name is associated correctly with the control.
Use a tool that exposes the document through the accessibility API, and verify that the table structure contains the appropriate TR, TH, and TD structures, and that they are in the proper reading order and hierarchy.
Procedure
- For each page converted to text using OCR, ensure that the resulting PDF has been converted correctly, using
name is associated correctly with the control.
- For each page converted to text using OCR, ensure that the resulting PDF has been converted correctly, using
Procedure
For the form control, verify that name, role, and value/state are specified by one of the following ways:
Read the PDF document with Use a screen reader or a tool that reads aloud, listening to hear that all text is read correctly and in the correct reading order.Save the document as text and check that the converted text is complete and in the correct reading orderto navigate to the form control and check that it can be activated or that its value can be changed. Verify that the name (tooltip) and role are announced.
Use a tool that is capable of showing the converted content form field information to open the PDF document and verify that all text was converted and is in the correct reading orderthe form control has the correct name, role, value, and state (if appropriate) information.
Use a tool that exposes the document through the accessibility API, and verify that all text was converted and is in the correct reading order.
Procedure
Verify that the first occurrence of abbreviations that require expansion text have /E entries on an enclosing tag by one of the following and that both the abbreviation and the expansion text are provided:
In Windows, use Microsoft's Inspect.exe tool, or some other tool that allows inspection of the MSAA interface, to locate the text of the abbreviation in the document tree and ensure that the value of the abbreviation is in the expansion text.
In a PDF editor, locate the tag for the text that is the abbreviation, and check that an expansion or definition is provided for each abbreviation in the Expansion Text field in the corresponding tag's properties.
Read the PDF document with a screen reader, listening to hear that on the first occurrence, the abbreviation and expansion are read when the screen reader reads the content line-by-line.
Use a tool that is capable of showing the /E entry value, such as aDesigner to open the PDF document and view the GUI summary to read the text expansions for abbreviations.
Use a tool that exposes the document through the accessibility API and verify that the text expansion of the abbreviation is properly implemented.
(forms only) Labels
(forms only) Informative form fields
(forms only) Submit Buttons
(forms only) Values input
the form control has the correct name, role, value, and state (if appropriate) information.
Procedure
For each page that submits a form, visually verify that the form contains a submit button and check one of the following:
Tab to the button and check that it submits the form in response to user action to select the button.
Open the PDF document with a tool that is capable of showing the submit-form action and check that the button action is to submit the form.
Procedure
For each form field that requires specific input, verify that validation information and instructions are provided by applying the following:
Check that the format or value that is required is indicated in the form control's label.
Use an erroneous format or value and move off the field: make sure that an alert describing the error is provided.
Procedure
For each form control, verify that it is properly implemented by tabbing to each form control and checking that it can be activated or that its value can be changed from the keyboard.