Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Summary

This page summarizes WCAG 2.1 AA standards for creating accessible PDFs. If any conflict exists, follow the WCAG documentation.

Best Practices

  1. Create your document in Microsoft Word, using built-in features for lists, headings, tables, etc, then export to PDF.

  2. 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

  • Alternative text

    Bookmarks

    • ProcedureUsing a PDF editor, check that a text alternative is displayed for each image.

  • Artifact images

    • For an image that is purely decorative, make sure the decorative image is marked as an artifact.

  • Bookmarks

    • Check that the Bookmarks panel displays bookmarks.

    • Check that the bookmarks link to the correct sections in the document.

  • Tabs and Reading Order

    (forms only)
    • Procedure

      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.

  • Artifact images

    • Procedure

      1. 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.

  • Table markup

    • For each table, confirm that the appropriate TR, TH, and TD tags are in the proper reading order and hierarchy in the table tree.

  • OCR/Actual Text

    • For each page converted to text using OCR, ensure that the resulting PDF has been converted correctly, via manual review in ABBYY Finereader.

  • Abbreviations and acronyms

    • 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:

      1. 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.

      2. 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.

  • Headings

    • For all PDF content that is divided into separate sections, use a PDF editor to make sure the headings are tagged correctly.

  • Links

    • For each hyperlink, verify that the link is correctly tagged and the link text is properly exposed.

  • Replacement text

    • For the hyperlink, verify that the alternate link text is properly coded.

  • Running headers and footers

    • 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).

      1. If section headers are used in the running header or footer, check that the section header and the running header or footer are consistent.

  • Default Language

    • Verify that the default language for the document is correctly specified.

  • Multi-language documents

    • 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.

  • Page numbering

    • 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.

  • Document title

    • Verify that the title for the document is correctly specified and displayed in the title bar.

  • Editing tables

    • For a table that has been repaired with the Table Editor, confirm one of the following:

      1. 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.

  • Lists

    • 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.

  • Form controls

    • Procedure

      For each form field that is required, verify that validation information and instructions are provided by applying the following:

      1. Check that the required status is indicated in the form control's label.

      2. Leave the field blank and submit the form. Check that an alert describing the error is provided.

      3. Use a tool that exposes the document through the accessibility API, and verify that the required property is indicated.

  • Table markupLabels

    • Procedure

      1. For each table, confirm one of the following:

      2. 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.

      3. 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.

      4. 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.

      5. 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.

    OCR/Actual Text

    • Procedure

      1. 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.

  • Informative form fields

    • Procedure

      1. 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.

  • Abbreviations and acronyms

    • Procedure

      1. 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.

  • Headings

  • (forms only) Labels

  • Links

  • (forms only) Informative form fields

  • Replacement text

  • Running headers and footers

  • (forms only) Submit Buttons

  • Default Language

  • Page numbering

  • Document title

  • Multi-language documents

  • Editing tables

  • Lists

  • (forms only) Values input

  • (forms only) Interactive form controls
        • the form control has the correct name, role, value, and state (if appropriate) information.

  • Submit Buttons

    • Procedure

      1. 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.

  • Values input

    • Procedure

      For each form field that requires specific input, verify that validation information and instructions are provided by applying the following:

      1. Check that the format or value that is required is indicated in the form control's label.

      2. Use an erroneous format or value and move off the field: make sure that an alert describing the error is provided.

  • Interactive form controls

    • Procedure

      1. 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.