Screen reader
This article needs additional citations for verification. (July 2017) |
A screen reader is a form of
Types
Command-line (text)
In early
In the 1980s, the Research Centre for the Education of the Visually Handicapped (RCEVH) at the University of Birmingham developed a Screen Reader for the BBC Micro and NEC Portable.[10][11]
Graphical
Off-screen models
With the arrival of graphical user interfaces (GUIs), the situation became more complicated. A GUI has characters and graphics drawn on the screen at particular positions, and therefore there is no purely textual representation of the graphical contents of the display. Screen readers were therefore forced to employ new low-level techniques, gathering messages from the operating system and using these to build up an "off-screen model", a representation of the display in which the required text content is stored.[12]
For example, the operating system might send messages to draw a command button and its caption. These messages are intercepted and used to construct the off-screen model. The user can switch between controls (such as buttons) available on the screen and the captions and control contents will be read aloud and/or shown on a refreshable braille display.
Screen readers can also communicate information on menus, controls, and other visual constructs to permit blind users to interact with these constructs. However, maintaining an off-screen model is a significant technical challenge; hooking the low-level messages and maintaining an accurate model are both difficult tasks.[citation needed]
Accessibility APIs
Operating system and application designers have attempted to address these problems by providing ways for screen readers to access the display contents without having to maintain an off-screen model. These involve the provision of alternative and accessible representations of what is being displayed on the screen accessed through an
- Android Accessibility Framework[13]
- Apple Accessibility API[14]
- AT-SPI
- IAccessible2
- Microsoft Active Accessibility (MSAA)
- Microsoft UI Automation
- Java Access Bridge[15]
Screen readers can query the operating system or application for what is currently being displayed and receive updates when the display changes. For example, a screen reader can be told that the current focus is on a button and the button caption to be communicated to the user. This approach is considerably easier for the developers of screen readers, but fails when applications do not comply with the accessibility API: for example, Microsoft Word does not comply with the MSAA API, so screen readers must still maintain an off-screen model for Word or find another way to access its contents.[citation needed] One approach is to use available operating system messages and application object models to supplement accessibility APIs.
Screen readers can be assumed to be able to access all display content that is not intrinsically inaccessible. Web browsers, word processors, icons and windows and email programs are just some of the applications used successfully by screen reader users. However, according to some users,[who?] using a screen reader is considerably more difficult than using a GUI, and many applications have specific problems resulting from the nature of the application (e.g. animations) or failure to comply with accessibility standards for the platform (e.g. Microsoft Word and Active Accessibility).[citation needed]
Self-voicing programs and applications
Some programs and applications have voicing technology built in alongside their primary functionality. These programs are termed self-voicing and can be a form of assistive technology if they are designed to remove the need to use a screen reader.[citation needed]
Cloud-based
Some telephone services allow users to interact with the internet remotely. For example, TeleTender can read web pages over the phone and does not require special programs or devices on the user side.[citation needed]
Web-based
A relatively new development in the field is web-based applications like Spoken-Web that act as web portals, managing content like news updates, weather, science and business articles for visually-impaired or blind computer users.[
This functionality depends on the quality of the software but also on a logical structure of the text. Use of headings, punctuation, presence of alternate attributes for images, etc. is crucial for a good vocalization. Also a web site may have a nice look because of the use of appropriate two dimensional positioning with CSS but its standard linearization, for example, by suppressing any CSS and Javascript in the browser may not be comprehensible.[citation needed]
Customization
Most screen readers allow the user to select whether most
Verbosity
Verbosity is a feature of screen reading software that supports vision-impaired computer users. Speech verbosity controls enable users to choose how much speech feedback they wish to hear. Specifically, verbosity settings allow users to construct a mental model of web pages displayed on their computer screen. Based on verbosity settings, a screen-reading program informs users of certain formatting changes, such as when a frame or table begins and ends, where graphics have been inserted into the text, or when a list appears in the document. The verbosity settings can also control the level of descriptiveness of elements, such as lists, tables, and regions.[16] For example, JAWS provides low, medium, and high web verbosity preset levels. The high web verbosity level provides more detail about the contents of a webpage.[17]
Language
Some screen readers can read text in more than one language, provided that the language of the material is encoded in its metadata.[18]
Screen reading programs like JAWS, NVDA, and VoiceOver also include language verbosity, which automatically detects verbosity settings related to speech output language. For example, if a user navigated to a website based in the United Kingdom, the text would be read with an English accent.[citation needed]
See also
- List of screen readers
- Screen magnifier
- Speech processing
- Speech recognition
- Speech synthesis
- Vinux
- VoiceOver
References
- ^ "Types of Assistive Technology Products". Microsoft Accessibility. Retrieved June 13, 2016.
- ^ a b c "Screen reading technology". AFB. Retrieved February 23, 2022.
- ^ "Screen Readers and how they work with E-Learning". Virginia.gov. Archived from the original on November 13, 2018. Retrieved March 31, 2019.
- ^ "Hear text read aloud with Narrator". Microsoft. Retrieved June 13, 2016.
- ^ Coyier, Chris (October 29, 2007). "Accessibility Basics: How Does Your Page Look To A Screen Reader?". CSS-Tricks. Retrieved June 13, 2016.
- ^ "What is a Screen Reader". Nomensa. Retrieved July 9, 2017.
- ^ "Screen Reader User Survey #9". WebAIM. Retrieved July 1, 2021.
- ^ "ChromeVox". Google. Retrieved March 9, 2020.
- ^ "Talking Terminals. BYTE, September 1982". Archived from the original on June 25, 2006. Retrieved September 7, 2006.
- ^ Paul Blenkhorn, "The RCEVH project on micro-computer systems and computer assisted learning", British Journal of Visual Impairment, 4/3, 101-103 (1986). Free HTML version at Visugate.
- ^ "Access to personal computers using speech synthesis. RNIB New Beacon No.76, May 1992". March 3, 2014.
- ^ According to "Making the GUI Talk" (by Richard Schwerdtfeger, BYTE December 1991, p. 118-128), the first screen reader to build an off-screen model was outSPOKEN.
- ^ Implementing Accessibility on Android.
- ^ Apple Accessibility API.
- ^ "Oracle Technology Network for Java Developers – Oracle Technology Network – Oracle".
- S2CID 248665696.
- ^ "JAWS Web Verbosity". www.freedomscientific.com. Retrieved November 6, 2022.
- Yahoo! Developer Network Blog. Archivedfrom the original on January 25, 2009. Retrieved February 28, 2015.