PDF Accessibility

Advanced PDF

Ensure you have Acrobat Pro DC installed on your device as Acrobat Reader lacks the necessary features to make PDFs accessible. Save after every change made following the instructions below as Acrobat cannot undo many actions.

On this page:

Manual Tags

View unmarked content:

  1. Open Tags pane.
  2. Open Options menu.
  3. Select Find.
  4. Select Unmarked Content from drop down menu.
  5. Select Search Document or Search Page.
  6. Select Find.
  7. Unmarked content will be highlighted in the document with a pink border.
  8. Tag content as needed.
  9. Select Next in dialog to move to next unmarked content.

Delete empty tags:

  1. Open Tags pane.
  2. Open Options menu.
  3. Select Delete Empty Tags.

If your document has no tags, you must first generate a Tags Root

  1. Open Tags pane.
  2. Select Options menu.
  3. Select Create Tags Root.

Create tag from selection:

  1. Open Tags pane.
  2. Choose Selection tool.
  3. Click and drag over the desired content.
  4. Select the Options menu in the Tags pane.
  5. Choose Create Tag from Selection.
  6. Select tag Type from drop down and select Ok.

Edit tag type

  1. Open Tags pane.
  2. Right-click on tag.
  3. Select Properties.
  4. On Tag tab, choose appropriate tag in Type:  menu.

To locate a tag in the document, select the tag in the Tags pane. A pink outline will appear around the content in the document.

To locate a tag in the Tags pane:

  1. Choose the Selection tool.
  2. Highlight the content in the document.
  3. Select the Options menu in the Tags pane.
  4. Choose Find Tag from Selection.
  5. The tags tree will expand to show the highlighted tag.

Types of Tags

Container elements are the highest level elements used to provide hierarchical grouping and structure of other elements.

In a PDF, the containers are:

  • <Document> the root element is the highest level container.
  • <Part> can be used for a chapter or page to group other elements.
  • <Div> is a generic element to group others.
  • <Art> is the article element used to group a distinct section within a larger element.
  • <Sect> is the section element used to group elements within a larger element.

To add heading tags:

  1. Open the Tags pane.
  2. Use the Selection tool to highlight the heading in the document.
  3. Open the Options menu in the Tags pane and select Create Tag from Selection.
  4. Select the appropriate tag from the drop down menu (Heading Level 1 through 6) and select Ok.
    1. Remember to use a nested, hierarchical heading structure without skipping any heading levels.

<P> should be used for all regular text that is not a heading.

To create a <P> tag:

  1. Choose the Selection Tool.
  2. Highlight the paragraph.
  3. Select the Options menu in the Tags pane.
  4. Select Create Tag from Selection.
  5. Select Paragraph from the drop down and choose Ok.

PDF lists have the following tags:

  • <L> List
  • <LI> List item
  • <Lbody> List Body
  • <Lbl> Label

To tag a list:

  1. Open Tags menu.
  2. Highlight the number or bullet (not the list item text, just the number or bullet point).
  3. Open the Options menu and select Create Tag from Selection.
  4. Select Label from drop down and press Ok.
  5. Select the contents of the first list item (not the number or bullet, just the text of the item).
  6. Open Options menu and select Create Tag from Selection.
  7. Select List Item Body from drop down and press Ok.
  8. In the Tags pane, right-click the Tags Root and select New Tag.
  9. Select List Item from the drop down menu and press Ok.
  10. Drag and drop the Label and List Item Body tags as children of newly created List Item tag.
  11. Repeat steps 2 through 10 for remaining list items.
  12. Right-click Tags Root and select New Tag.
  13. Choose List from drop down menu and select Ok.
  14. Hold CTRL(CMD on macOS) and click all of the List Item tags (created in step 10).
  15. Drag and drop as children of List tag (created in step 13).
  16. Double check the order of the tags match the visual order of the document.

To add link text:

  1. Highlight link text.
    1. Right-click and select Create Link…
    2. Choose options such as Link Action and Appearance.
    3. Choose Next.
    4. Enter URL in field and choose Ok.
  2. Open Tags menu.
  3. Open the Options menu and select Find.
  4. Choose Unmarked Links from the drop down menu.
    1. Select Search Page or Search Document radio button.
    2. Press Find.
  5. The first untagged link will be outlined in pink.
  6. Select Tag Element button.
  7. Select Link from drop down and press Ok.
  8. A <Link> tag and Link – OBJR tag appear in the tags tree.
  9. Select the Link tag in the Tags pane.
  10. Use the Selection tool to highlight the link text in the document.
  11. Open the Options menu in the Tags pane and select Create Tag from Selection.
  12. The link text and Link – OBJR should both now be tagged as children of the Link tag.

To add footnotes and references:

  1. Reading Order Tool.
  2. Draw a box around the superscript or link text.
  3. Click Reference or Note button.
  4. Begin from step 2 above.

Set the language of your PDF using File Properties Reading Options. Setting the language of the document and its parts tells assistive technology which language to expect and speak.

However, if the language of part of the document is in a different language or multiple languages you must specify the language of those parts. For a <Sect> or entire <P> you can set the language property. For something smaller than a <P> you will have to tag the content in <Span> and then change the language of that <Span> tag.

  1. Open the Tags Pane
  2. Right-click the relevant tag and select Properties
  3. In the dialog window, select the Tag tab, choose the appropriate Language from the dropdown and then select Close

To change the language of one sentence:

  1. Within a previously tagged <P> open the Tags pane and then Options menu.
  2. Select New Tag… and choose Span from the drop down and select Ok.
  3. In the document, highlight the text with the language change.
  4. Right-click the newly created <Span> in the Tags pane.
  5. Select Create Tag from Selection.
  6. Drag and drop the <Span> to the correct order in the Tags tree.
  7. Right-click the <Span> tag and select Properties.
  8. On the Tag tab, select the Language from the drop down and choose Close.

Images:

  1. Open the Order pane.
  2. Open the Options menu and select Show reading order panel.
  3. Click and drag to draw a box around the image and select Figure in the Reading Order Panel.
  4. Open the Tags pane.
  5. Right-click on the Figure tag and select Properties.
  6. On the Tag tab, enter alt text in the Alternative Text field.

A table of contents is exceptionally helpful for longer documents and is a recommended practice for any document longer than 5 pages. Each line of the table of contents should link to that point of the document.

To create a table of contents:

  1. Highlight link text.
    1. Right-click and select Create Link…
    2. Choose Go to a page view.
    3. Choose Next.
    4. Move to document location and choose Ok.
  2. Open Tags menu.
  3. Open the Options menu and select Find.
  4. Choose Unmarked Links from the drop down menu.
    1. Select Search Page or Search Document radio button.
    2. Press Find.
  5. The first untagged link will be outlined in pink.
  6. Select Tag Element button.
  7. Select Link from drop down and press Ok.
  8. Repeat with each line of the table of contents.
  9. Create a TOCI tag for each line.
    1. Tags pane > New Tag > Table of Contents Item > Ok.
  10. Move each link and link text tag into each TOCI tag.
  11. Highlight the first table of contents line.
  12. Right-click the first link tag in the Tags pane and choose Create Tag from Selection.
  13. Repeat with each line move down the tags tree of link tags.
  14. Create an empty Table of Contents tag.
    1. Right-click tags root > New Tag > Table of Contents > Ok.
  15. Hold Control and click to select all TOCI tags and drag and drop under TOC tag as nest children.
    1. Verify order.
  16. Set table of contents title as an H1.
    1. Highlight “Contents” or “Table of Contents” or whatever text precedes the table of contents.
    2. In the Tags pane, select the Options menu, choose Create Tag from Selection.
    3. Choose Heading Level 1 and select Ok.
    4. Place <H1> tag above the table of contents, at the same hierarchy level.

Bookmarks are also essential to PDF accessibility. They do not require tagging. To add bookmarks:

  1. Select the Bookmarks button on the left.
  2. Move in the document to where you would like to place a bookmark.
  3. Use the Selection tool to select the area of the page to be bookmarked.
    1. For example: click an image or highlight text.
  4. Use the New bookmark button in the Bookmarks pane.
  5. Ensure bookmarks are in logical order.

Read more about PDF bookmarks

Artifacts

If you want screen readers to ignore certain content, such as decorative images, you must mark those items as Artifacts.

To mark objects as an artifact:

  1. Open Reading Order Tool.
  2. Click and drag zone around element.
  3. In the Reading Order Tool select Background/Artifact button.
  4. This removes the item from the tags tree.

Or use the tags pane:

  1. Open the Tags pane.
  2. Right-click the content, not the tag icon, in the tags tree.
  3. Select Change Tag to Artifact.

To show artifact tags:

  1. Navigate to the Tags pane and select the options menu.
  2. Choose Find…
  3. Select Artifacts in dropdown (selected by default).
  4. Choose Search Page or Search Document.
  5. Select Find.

Note: InDesign often exports excess tags. In Acrobat, use the Preflight tool to remove them:

  1. Under Tools, choose Print Production.
  2. Select Preflight.
  3. Select the wrench icon and under Document select Mark all non-structure elements as artifact.
  4. Click Fix.

Tables

Tables in PDFs require special attention to ensure they are accessible.

PDF Tables need the following tags:

  • <Table>
  • <TR> table row
  • <TH> table header
  • <TD> table data

To tag a table properly, you must designate:

Header cells:

  1. Use the Selection tool to select the first header cell.
  2. Open the Options menu in the Tags pane.
  3. Select Create Tag from Selection.
  4. Select Table Header Cell from drown down menu and select Ok.
  5. Repeat above steps for all header cells.

Data cells:

  1. Use the Selection tool to select the first data cell.
  2. Open the Options menu in the Tags pane.
  3. Select Create Tag from Selection.
  4. Select Table Data Cell from the drop down menu and select Ok.
  5. Repeat for all other data cells.

Row tags:

  1. Create the number of required empty row tags. There needs to be a <TR> table row tag for each table row, including header row.
  2. In the Tags pane, open the Options menu and select New Tag.
  3. Choose Table Row and select Ok.
  4. Hold Shift and click to select all cell tags in the first row.
  5. Drag and drop into the first Table Row tag (created in step 13), nested as children.
  6. Repeat for all rows.

Table tag:

  1. Create a Table Tag.
  2. In the Tags pane, open the Options menu and select New Tag.
  3. Choose Table and select Ok.
  4. Hold Shift and click all the <TR> table row tags.
  5. Drag and drop into the Table tag (created in step 19), nested as children and in logical order.
  6. For complex tables or to add context, provide a description of the table in the Alternative Text field by right-clicking the Table tag, selecting Properties, and moving to the Tag tab.

Complex Tables

Tables with split cells, merged cells, or cells that span multiple rows or columns can be difficult for assistive technology to interpret. Best practice is to create simple tables even if you can create a complex table that technically adheres to accessibility standards. To make tables accessible:

  1. Open the Order pane.
  2. Select the menu and choose Show reading order panel.
  3. Select the table and select Table Editor button on the Reading Order panel.
  4. Right-click on spanned cell and select Table Cell Properties…
  5. If it is a header ensure Header Cell radio button is selected.
    1. Use the Scope: dropdown to select the appropriate designation (Row, Column, or Both).
  6. In the Attributes section enter the Row span and Column span to indicate the number of rows or columns spanned by the merged/spanned cell.
  7. Click Ok and Yes to any warning messages.

Javascript

You can add Javascript to PDF. This may prove useful for certain forms.

To create fillable text fields that include existing lines for printing and filling by hand, use one of the following methods to ensure accurate text entry.

To create a multiline text field:

  1. Create a multiline text field spanning all lines on form.
  2. Right-click > Properties.
  3. Format tab.
  4. Select Custom in Select format category menu.
  5. Custom Format Script.
    1. Use Edit button to open Javascript editor.
    2. Paste:
      1. var field = event.target;if (field.value == field.defaultValue) {field.fillColor = color.transparent}else {field.fillColor = color.white}
    3. Press Ok.
  6. Press Close.

To create a single line text field:

  1. Create a text field for each line.
  2. Select first text field.
  3. Right-click and select Properties.
  4. Move to Appearance tab and set an absolute font size (minimum 11).
  5. Move to Options tab and uncheck Multi-line and Scroll long text.
  6. Move to Format tab.
  7. Select Custom in Select format category menu.
  8. Custom Keystroke Script.
    1. Use Edit button to open Javascript editor.
    2. Paste:
      1. if ( event.fieldFull || event.willCommit ) this.getField(“*name of nextfield to continue in*”).setFocus();
  9. Repeat 3-8 for each subsequent field, ensuring target field is named correctly.

You may also wish to include a clear fields button:

  1. Add a visible text label reading “Clear Form”.
  2. Place button in form next to “Clear Form”.
  3. Select All Properties link.
  4. On General tab type a unique name (“Clear form”) and tooltip (“Click to clear all form fields”).
  5. On Appearance tab set font size to 14.
  6. On Options tab navigate to Behaviour dropdown and choose Push.
  7. Under State options and select Up.
  8. Type “Clear form” in Label field.
  9. Navigate to the Actions tab.
  10. In the Select Trigger drop down, choose Mouse Up.
  11. In the Select Action drop down, choose Run a Javascript and press Add button.
  12. In the Javascript editor, paste:
    1. var MyTitle = “Clear Form Confirmation”;var MyAlert = “Clear all form fields?\n\nThis action cannot be undone. Proceed?”;if (app.alert({cMsg: MyAlert, nIcon: 1, cTitle: MyTitle, nType: 2}) == 4){this.resetForm();}

License

Icon for the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

Accessibility Handbook for Teaching and Learning Copyright © 2023 by Briana Fraser and Luke McKnight is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License, except where otherwise noted.