Ekranlegilo estas programaro speciale konstruite por blinduloj. Ĝia tasko estas[1] rekonstrui videblan enhavon de ekrano tekste, kiun ĝi povas elparoli[2][3] aŭ sendi al Brajla linio.[4] Ĝi estas utila ankaŭ por aliaj vidmalkapabluloj, aŭ por uloj, kiuj ne aŭ tre malbone povas legi.[5] Ekranlegiloj povas uzi dediĉitan API por aliro, kaj uzi varian kapablojn de operaciumo, aŭ aliajn teĥnikojn, kiuj plivastigas kapablojn de operaciumo.[6]
Ekde Windows 2000 Microsoft igis Microsoft Narrator en Windows, sed liberaj programaroj igis pli popularaj. Pliaj uzantoj elektis NVDA de NV Access, JAWS de Freedom Scientific, kaj ZoomText. Por macOS, iOS, kaj tvOS Apple Inc. enigis VoiceOver. Android de Google havas Talkback ekranlegilon, kaj Chrome OS enhavas ChromeVox. Android-bazaj iloj estas uzeblaj per VoiceView. Ankaŭ Linux kaj aliaj Unixaj sistemoj havas iliajn liberajn ekranlegilojn, kiel Speakup kaj Orca.
Fruaj operaciumoj havis nur tekstan surfacon, kiu signifikas, ke la enhavo de ekrano estis komplete karaktera. Tiu venis direkte el memorio en bufero de ekrano. Uzantoj interagis per klavaro. Ekranlegiloj povis legi kaj tiujn signojn kaj buferon de ekrano. Teĥnikoj estis hooking por ricevi informon kaj uzi socket por eldono.[7]
En 1980-aj jaroj Research Centre for the Education of the Visually Handicapped (RCEVH) en Birmingham Universitato evolved Screen Reader por BBC Micro kaj NEC Portable.[8][9]
Estas operaciumoj, kiujn oni povas uzi en karaktera modo.
Grafikaj surfacoj malsimplifikis taskon por ekranlegiloj, ĉar ili devas ankaŭ manipuli grafikan enhavon, kaj lokon de teksto. La teĥnikoj devis evolviĝi, la ekranlegilo devas eki mesaĝojn de operaciumo, fari kaj manipuli ĝian modelon pri ekrano.
Ekzemple la operaciumo sendas mesaĝojn pri butono kaj ĝia teksto. La ekranlegilo ekas tiajn mesaĝojn, kaj reprezentas ankaŭ tiun butono en ĝia modelo. Ĝi povas legi ĝin voĉe aŭ sendi ĝin al Brajla linio. La uzanto povas moviĝi per klavaro kaj elekti tiun butonon.
Ekranlegiloj komunikas informojn de menuoj, kontroloj kaj aliaj videblaj konstruoj por ebligi por blindaj uzantoj interagi kun ili. Sed tiuj ekranlegiloj estas kompleksaj programaroj, kiuj uzas variajn teĥnikojn. Fari kaj manipuli bonan modelon por tiu kaj kelkaj teĥnikoj estas malsimplaj. Skribi kaj subteni ilin estas ankaŭ malsimpla.
Programistoj pensis multe, ĉu estas modelo pri enhavo necesa. Iuj faris kelkajn API por simplifiki skribadon de ekranlegiloj, ĉar oni ne devas pensi pri metodo por eki aŭ reprezenti informojn: tiun faras la API. Oni devas refenernci al elementoj de elektitan API. Nuntempe estas kelkaj de tiuj API, la plej gravaj:
Tiuj API helpas skribi malpli kompleksajn programarojn, kiuj ne bezonas modelon pri enhavo. La API demandas operaciumon aŭ aplikan programon pri iliaj vidigitan informoj. Ekzemple la programo komunikas, ke fokuso staras sur butono kun teksto, kiu estas ankaŭ komunikita al la ekranlegilo. Sed tiu ne funkcias kun aplikaj programoj, kiuj ne konformas al API uzitan en operaciumo. Por tiuj, evolvistoj devas subteni ankaŭ modelojn por tiuj programoj. Por ekzemplo, Microsoft Word estas nekonforma al MSAA API, do ekranlegiloj devas havi modelon por ĝi. Alia metodo estas ekigi mesaĝojn de operaciumo kaj aplikaj programoj.
Ekranlegiloj povas aliri ĉiun informojn, kiuj ne estas el ilia naturo nealireblaj. Oni povas uzi per ekranlegiloj retumilojn, tekstajn redaktilojn, programojn por retmesaĝoj, fenestrajn programojn kun ikonoj. Sed iuj enhavoj (ekzemple animacioj) ne estas intelegeblaj per ekranlegiloj, kaj komence povas uzi ilin ne tial intuicie kiel grafikan surfacon.
Selfsonaj programoj enhavas ilian parolatan teĥnologion, kiun oni povas uzi kun ilia funkcion. Tiuj programoj estas nomitaj Angle self-voicing, kaj apartenas al helpa teĥnologio.
Iuj provizantoj havas ekranlegilojn en ilia serviloj, al kiuj iliaj klientoj povas konekti kaj legi retajn paĝojn per telefonoj.
Similaj estas parolamtaj portaloj, ekzemple Spoken-Web, kiuj manipulas retan enhavon kiel novaĵoj, vetera servo, scienco kaj negocoj. ReadSpeaker kaj BrowseAloud voĉas tekstojn de retpaĝoj; iliaj uzantoj estas kiuj, tiuj povas ne aŭ malbone leĝi, sed bone povas parolite inteligi lingvon de tiuj retpaĝoj. Kvankam tiuj funkcioj erstas baritaj, ilia avantaĝo estas, ke oni ne necesas instaligi ilin, do ili estas uzeblaj ankaŭ per publikaj komputiloj.
Per evolvo de teĥniko ankaŭ telefonoj estis evolvigitaj. Saĝtelefonoj vastigis aron de homoj, kiuj volis aŭdi tekstajn enhavojn dum aktivecoj kiel hejma mastrumado, kurado aŭ stirado kiel muzikon aŭ radion. Ekzemploj estas Siri por iOS, Google Now kaj Iris por Android. Samsung donis S Voice kun Galaxy S III. En BlackBerry 10 operaciumo por Z30 smartphone ili havas ankaŭ similan personan asistenton.
Tiuj funkcioj dependas also je strukturo de teksto. Ili povas legi bone paĝoj, kiuj uzas strukturajn elementojn laŭ iliaj signifiko. Reta paĝo povas havi bonan du dimensian posician strukturon, sed ĝia linerizado povas esti neitelegebla. Por fari bone legeblaj paĝoj, oni ekis WCAG normojn por alirebleco. WCAG 1.0 estis konceptita en 2000. Kvankam iuj partoj povas esti respektitaj ankaŭ nune, ĝi okupiĝas tre kun tiamaj teĥnologio, kaj ne povis respekti teĥnologion, kiun oni evolvis porte. Do oni havas WCAG 2.0 ekde 2008. Per novaj evolvoj oni necesis havi novajn kriteriojn, do WCAG 2.1 donas novajn al WCAG 2.0.
Pleje ekranlegiloj estas agordebla, ĉu uzi akcenton, aŭ ne. Per skriptoj oni povas adapti ekranlegilon al aliaj programoj. Avantaĝo estas, ke uzantoj povas tiujn agordojn kaj skriptojn kopii, do havi samajn agordojn. Oni povas eki tiujn skriptojn, ekzemple JAWS havas grandan aron de tiuj skriptoj.
Verbriĉeco estas kapablo de ekranlegiloj, kiu adaptas al neceso de vidaj handikapuloj. Uzanto povas elekti, kiom da raportoj volas aŭdi. Kiuj eblas, ke ankaŭ blinduloj povas igi modelon de grafika surfaco. Ekzemple, blindaj uzantoj povas koni, kie estas framoj, tabeloj, listoj aŭ grafikaĵoj.
Estas ekranlegiloj, kiuj estas adapteblaj al lingvoj. El metadatoj ili ekas informon pri lingvon, kaj uzas prononcajn regulojn de tiu lingvo. Do gravas, ke ankaŭ retaj paĝoj havas informon pri lingvojn, kiujn ili uzas. Plej bone estas, ke ankaŭ lingvoj de maloftaj vortoj kaj fremdaj esprimoj estas ekigeblaj informoj. Ekzemple, ĝi detektas, ke lingvo estas Angla, do ĝi prononcas vortojn Angle. Iuj ekranlegiloj lasas konfiguri vortriĉecon por lingvoj.
En tiu ĉi artikolo estas uzita traduko de teksto el la artikolo Screen reader en la angla Vikipedio.