Checking PDF for Accessibility with screen reader NVDA

Basically, we do not recommend any screen reader tests, as using the program requires a lot of practice. Nevertheless, a test can sometimes be useful. The read-aloud function of the Adobe programs does not use any accessibility tags and is therefore unsuitable for a test. The screen reader NVDA is recommended here, which is only available for Windows but free of charge. You can create a portable version during the installation process, so no installation is required. The Apple platforms do not support tagged PDFs, so a test with VoiceOver makes no sense on either iOS or the Mac (as of June 2023). To my knowledge, Linux, Unix and Android as well as ChromeOS do not support accessible PDFs either. One can certainly say that the support under Windows is best and therefore the test under Windows and the screen readers NVDA or Jaws ( makes the most sense.

Article Content

Important settings

Here are some useful tips on how to customize NVDA for your testing needs.

Please note that NVDA sometimes crashes. If this happens, you can restart the program with INSERT + Q. If that doesn't work, you have to end the program via the Windows task manager.

It is usually more comfortable for sighted persons if speech is switched off. To do this, press INSERT + S or turn the volume down.

NVDA does not have a visual menu. Please call up the menu with the key combination Ins + N and select Options -"Settings.

To highlight the passage that is being read, go to "Visual representations" on the left and first select Enable highlighting, then check the three boxes for Highlighting.

To hear what's under the mouse, turn on mouse tracking under Mouse. With INSERT + M you can switch the mouse announcement on and off. It is more pleasant to switch it off, since otherwise too much unnecessary information will be read out with every mouse movement.

The announcement under the mouse cursor is not reliable, only what is announced with the screen reader when the virtual cursor is used is relevant.

You can display the voice output and the Braille output as text. To do this, go back to the NVDA main menu and select under “Tools” Narrator or Braille Viewer. Typically, the Narrator Viewer is used.

You can move or change the size of the window with the mouse. You can click inside the window and then select, copy, and paste the text elsewhere.

Adobe Reader

Currently, Adobe Reader or Adobe Acrobat are particularly suitable for reading accessible PDFs. No other program currently supports the accessibility tags to this extent, all browsers are unsuitable for testing. In the future, the Edge browser under Windows will have Adobe's own functions for PDF display, but it is currently not clear whether this also applies to the tags.

Start NVDA first, then Adobe. Before you can get started, you need to configure accessibility features in Adobe, they will appear automatically when using assistive technologies.

If this is not the case, go to Edit in Adobe Reader, then to Accessibility and then to Setup Assistant.

Specify here on page 3 of the settings that tags should only be inserted after consent, on page 4 specify that the entire document is read in at once.

Now open any document. If you see the following or a similar dialog, the document is not accessible.

This means that the document is not tagged and therefore not accessible. A further test is then pointless.

Please note that the processing of documents can sometimes take several minutes, regardless of whether they are accessible or not. Especially with complex documents you should wait a little until NVDA reacts. Meanwhile, Adobe Reader can sometimes freeze. Wait a minute and the rendering should be complete.

Further check in Adobe Reader

You can do a quick check with the mouse. Narrator can output what is under the mouse pointer.

Now you can check individual document structures. To do this, you can use NVDA's navigation keys, which are normal keys on the keyboard that allow you to reach specific elements in the document:

  • H jumps from heading to heading
  • G jumps from image to image, only reading out images with alternative text
  • Q jumps from quote to quote
  • CTRL + Arrow down jumps from paragraph to paragraph
  • i jumps from list item to list item

With the CTRL key you stop the speech output, with Shift you can pause and resume the speech output if you have not performed any other action in between.

With Ins + F7 you can list all the headings and links in a document at a glance.

Checking tables

With T you jump to the first recognized table. Hold down CTRL + Alt and use the arrow keys to move systematically through a table. For example, CTRL ALT + RIGHT ARROW moves you right, CTRL ALT + DOWN ARROW moves you down, and so on.

It is particularly important here that the elements are announced in the same order as they are visually displayed.

An existing short description is read out if you jump to the table with T or if you reach the table via the continuous text reading.

Table headings are read when you first enter the row or column with the heading. This means that if you navigate within a column or row with the heading, the heading will not be read out.

forms

If you want to check a form, activate the form mode. First, jump to the next form field with F. With Ins + Space you activate the form mode and can write text with the keyboard as normal. Use Ins + Space to exit form mode. The form mode is acoustically recognizable by a clicking noise.

You can proceed as follows in form mode: All elements should be tabbed in a logical order, i.e. an order based on the visual structure. If the tab jumps from first name to street to last name to zip code, the order is not logical.

Checkboxes are activated/deactivated with the spacebar

With ALT arrow down, selection fields or select fields can be expanded, with Return an option is selected and the select box is collapsed

Use the up or down arrow to select radio buttons

If the form mode is not activated, you can use the following keys:

  • Use F to jump from form field to form field
  • With E you jump to the next input field
  • X = next check box
  • r = next radio button
  • C = next select field

Other articles