Screen reader

From Wikipedia, the free encyclopedia

A screen reader is  a software application that attempts to identify and  interpret what is  being displayed on the screen. This is  then presented to a blind user as speech (by text-to-speech) or  by driving a braille display. Screen readers are  used by people with little or  no functional vision and  are a form of Assistive technology: people with some vision often use screen magnifiers.

Contents

[edit] Types of screen reader

[edit] CLI (text) screen readers

In early operating systems such as MS-DOS which employed a Command Line Interface (CLI), the screen display consisted of characters mapping directly to a screen buffer in memory and  a cursor position. Input was by keyboard. All this information could therefore all be obtained from the system either by hooking the flow of information around the system and  reading the screen buffer or  by using a standard hardware output socket [1] and  communicating the results to the user. This was relatively easy to engineer. Screen readers were developed for early personal computers such as the BBC Micro [2].

[edit] GUI screen readers

[edit] 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  as such there is  no 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.

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.

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.

[edit] 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  API. Examples include AT-SPI, Microsoft Active Accessibility and  the Java Access Bridge. 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 screen readers, but fails when applications do not comply with the accessibility API: for example, Microsoft Word does not comply with the Microsoft Active Accessibility API, so screen readers must still maintain an  off-screen model for Word or  find another way to access its contents. One approach is  to use available operating system messages and  application object models to supplement accessibility APIs: the Thunder screenreader operates without an  off-screen model in this way.

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, using a screen reader is, according to some users, considerably more  difficult than using a GUI and  many applications have  specific problems resulting from the nature of the application (e.g. animations in Macromedia Flash) or  failure to comply with accessibility standards for the platform (e.g. Microsoft Word and  Active Accessibility).

[edit] Self-voicing applications

Some programs provide audio output (i.e. speech) so that they can be used by blind people or  people who cannot see the screen. 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.

Some web browsers illustrate this type of program. Opera offers built in text-to-speech support but is  not specifically designed for use by a blind person: the speech is  supplementary to the sighted user interface. IBM's Home Page Reader, on the other hand, is  designed to be wholly usable by a blind person with a keyboard or  Braille display and  no screen reader running.

[edit] Screen reader products

Many different commercial screen readers are  available, with different approaches and  features. For example, some screen readers can be scripted. Scripts are  written for individual applications and  users so the behaviour of the screen reader can be tailored to the application and  user. A person's choice of screen reader is  dictated by many factors, including cost — screen readers can cost many hundreds of U.S. dollars — and  the role of organisations like charities and  schools. Screen reader choice is  contentious and  strong opinions and  preferences are  common.

Most screen readers are  commercial products: JAWS from Freedom Scientific, Window-Eyes from GW Micro and  Hal from Dolphin Computer Access being examples. ReadPlease runs on Windows and  has a free version which can be upgraded to a more  featured version.

Recent operating system developments have  included some built-in screen readers: Microsoft Windows 2000 and  XP come with a very limited built-in screen reader called Narrator which works through Active Accessibility (and so can be used for MSAA applications such as Windows Explorer and  Notepad but not for Microsoft Office or  Internet Explorer). Apple has built VoiceOver, a much more  fully-featured screen-reader, into Mac OS X.

Other screen readers, such as Virgo from Baum, are  sold as part of a package with a Braille display, allowing users of the Braille display to access their computer. Screen magnifiers often come with some rudimentary speech, such as reading items under the mouse cursor. Other products such as SuperNova from Dolphin Computer Access combine full screen reading with magnification and  Braille.

There are  also Open Source screen readers at varying levels of ability, including the Linux-based and  powerful Emacspeak [3] and  the less  developed BRLTTY and  suse-blinux, for unix text consoles and  gnopernicus, Orca, and  Linux Screen Reader for unix graphical applications exporting the AT-SPI interface. There is  also the CLC-4-TTS Suite which works on multiple operating systems (Windows, Mac, and  Linux), although it  is currently limited to just reading for the Firefox web browser.

A relatively new development in the field is  web-based applications, using Ajax methods to provide text to speech assistive functionalities to web sites and  pages, such as Talklets. Although functionality is  currently limited compared to some of the desktop applications available, the major benefit is  the 'freedom to roam' this offers the user, as no admin rights are  required on the machine being used.

[edit] References

  1. ↑  Talking Terminals. BYTE, September 1982. Retrieved on September 7, 2006.
  2. ↑  Access to personal computers using speech synthesis. RNIB New Beacon No.76, May 1992. Retrieved on August 17, 2005.

[edit] Emulators



[edit] See also

STATIC WIKIPEDIA JUNE 2008 on wikipedia2006.classicistranieri.com

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

STATIC WIKIPEDIA MARCH 2008 on wikipeda2006classicistranieri.com
aa, ab, af, ak, als, am, an, ang, ar, arc, as, ast, av, ay, az, ba, bar, bat_smg, be, bg, bh, bi, bm, bn, bo, bpy, br, bs, bug, bxr, ca, cbk_zam, cdo, ce, ceb, ch, cho, chr, chy, closed_zh_tw, co, cr, cs, csb, cu, cv, cy, da, de, diq, dv, dz, ee, el, eml, en, eo, es, et, eu, fa, ff, fi, fiu_vro, fj, fo, fr, frp, fur, fy, ga, gd, gl, glk, gn, got, gu, gv, ha, haw, he, hi, ho, hr, hsb, ht, hu, hy, hz, ia, id, ie, ig, ii, ik, ilo, io, is, it, iu, ja, jbo, jv, ka, kg, ki, kj, kk, kl, km, kn, ko, kr, ks, ksh, ku, kv, kw, ky, la, lad, lb, lbe, lg, li, lij, lmo, ln, lo, lt, lv, map_bms, mg, mh, mi, mk, ml, mn, mo, mr, ms, mt, mus, my, mzn, na, nah, nap, nds, nds_nl, ne, new, ng, nl, nn, no, nov, nrm, nv, ny, oc, om, or, os, pa, pag, pam, pap, pdc, pi, pih, pl, pms, ps, pt, qu, rm, rmy, rn, ro, roa_rup, roa_tara, ru, ru_sib, rw, sa, sc, scn, sco, sd, se, searchcom, sg, sh, si, simple, sk, sl, sm, sn, so, sq, sr, ss, st, su, sv, sw, ta, te, test, tet, tg, th, ti, tk, tl, tlh, tn, to, tokipona, tpi, tr, ts, tt, tum, tw, ty, udm, ug, uk, ur, uz, ve, vec, vi, vls, vo, wa, war, wo, wuu, xal, xh, yi, yo, za, zea, zh, zh_classical, zh_min_nan, zh_yue, zu.

STATIC WIKIPEDIA APRIL 2007 on wikipeda2006classicistranieri.com
aa, ab, af, ak, als, am, an, ang, ar, arc, as, ast, av, ay, az, ba, bar, bat_smg, be, bg, bh, bi, bm, bn, bo, bpy, br, bs, bug, bxr, ca, cbk_zam, cdo, ce, ceb, ch, cho, chr, chy, closed_zh_tw, co, cr, cs, csb, cu, cv, cy, da, de, diq, dv, dz, ee, el, eml, en, eo, es, et, eu, fa, ff, fi, fiu_vro, fj, fo, fr, frp, fur, fy, ga, gd, gl, glk, gn, got, gu, gv, ha, haw, he, hi, ho, hr, hsb, ht, hu, hy, hz, ia, id, ie, ig, ii, ik, ilo, io, is, it, iu, ja, jbo, jv, ka, kg, ki, kj, kk, kl, km, kn, ko, kr, ks, ksh, ku, kv, kw, ky, la, lad, lb, lbe, lg, li, lij, lmo, ln, lo, lt, lv, map_bms, mg, mh, mi, mk, ml, mn, mo, mr, ms, mt, mus, my, mzn, na, nah, nap, nds, nds_nl, ne, new, ng, nl, nn, no, nov, nrm, nv, ny, oc, om, or, os, pa, pag, pam, pap, pdc, pi, pih, pl, pms, ps, pt, qu, rm, rmy, rn, ro, roa_rup, roa_tara, ru, ru_sib, rw, sa, sc, scn, sco, sd, se, searchcom, sg, sh, si, simple, sk, sl, sm, sn, so, sq, sr, ss, st, su, sv, sw, ta, te, test, tet, tg, th, ti, tk, tl, tlh, tn, to, tokipona, tpi, tr, ts, tt, tum, tw, ty, udm, ug, uk, ur, uz, ve, vec, vi, vls, vo, wa, war, wo, wuu, xal, xh, yi, yo, za, zea, zh, zh_classical, zh_min_nan, zh_yue, zu.

STATIC WIKIPEDIA DECEMBER 2006 on wikipeda2006classicistranieri.com
aa, ab, af, ak, als, am, an, ang, ar, arc, as, ast, av, ay, az, ba, bar, bat_smg, be, bg, bh, bi, bm, bn, bo, bpy, br, bs, bug, bxr, ca, cbk_zam, cdo, ce, ceb, ch, cho, chr, chy, closed_zh_tw, co, cr, cs, csb, cu, cv, cy, da, de, diq, dv, dz, ee, el, eml, en, eo, es, et, eu, fa, ff, fi, fiu_vro, fj, fo, fr, frp, fur, fy, ga, gd, gl, glk, gn, got, gu, gv, ha, haw, he, hi, ho, hr, hsb, ht, hu, hy, hz, ia, id, ie, ig, ii, ik, ilo, io, is, it, iu, ja, jbo, jv, ka, kg, ki, kj, kk, kl, km, kn, ko, kr, ks, ksh, ku, kv, kw, ky, la, lad, lb, lbe, lg, li, lij, lmo, ln, lo, lt, lv, map_bms, mg, mh, mi, mk, ml, mn, mo, mr, ms, mt, mus, my, mzn, na, nah, nap, nds, nds_nl, ne, new, ng, nl, nn, no, nov, nrm, nv, ny, oc, om, or, os, pa, pag, pam, pap, pdc, pi, pih, pl, pms, ps, pt, qu, rm, rmy, rn, ro, roa_rup, roa_tara, ru, ru_sib, rw, sa, sc, scn, sco, sd, se, searchcom, sg, sh, si, simple, sk, sl, sm, sn, so, sq, sr, ss, st, su, sv, sw, ta, te, test, tet, tg, th, ti, tk, tl, tlh, tn, to, tokipona, tpi, tr, ts, tt, tum, tw, ty, udm, ug, uk, ur, uz, ve, vec, vi, vls, vo, wa, war, wo, wuu, xal, xh, yi, yo, za, zea, zh, zh_classical, zh_min_nan, zh_yue, zu.

STATIC WIKIPEDIA NOVEMBER 2006 on wikipeda2006classicistranieri.com
aa, ab, af, ak, als, am, an, ang, ar, arc, as, ast, av, ay, az, ba, bar, bat_smg, be, bg, bh, bi, bm, bn, bo, bpy, br, bs, bug, bxr, ca, cbk_zam, cdo, ce, ceb, ch, cho, chr, chy, closed_zh_tw, co, cr, cs, csb, cu, cv, cy, da, de, diq, dv, dz, ee, el, eml, en, eo, es, et, eu, fa, ff, fi, fiu_vro, fj, fo, fr, frp, fur, fy, ga, gd, gl, glk, gn, got, gu, gv, ha, haw, he, hi, ho, hr, hsb, ht, hu, hy, hz, ia, id, ie, ig, ii, ik, ilo, io, is, it, iu, ja, jbo, jv, ka, kg, ki, kj, kk, kl, km, kn, ko, kr, ks, ksh, ku, kv, kw, ky, la, lad, lb, lbe, lg, li, lij, lmo, ln, lo, lt, lv, map_bms, mg, mh, mi, mk, ml, mn, mo, mr, ms, mt, mus, my, mzn, na, nah, nap, nds, nds_nl, ne, new, ng, nl, nn, no, nov, nrm, nv, ny, oc, om, or, os, pa, pag, pam, pap, pdc, pi, pih, pl, pms, ps, pt, qu, rm, rmy, rn, ro, roa_rup, roa_tara, ru, ru_sib, rw, sa, sc, scn, sco, sd, se, searchcom, sg, sh, si, simple, sk, sl, sm, sn, so, sq, sr, ss, st, su, sv, sw, ta, te, test, tet, tg, th, ti, tk, tl, tlh, tn, to, tokipona, tpi, tr, ts, tt, tum, tw, ty, udm, ug, uk, ur, uz, ve, vec, vi, vls, vo, wa, war, wo, wuu, xal, xh, yi, yo, za, zea, zh, zh_classical, zh_min_nan, zh_yue, zu.