[fot. Zdjęcie przedstawiające ogrodzenie]
System dźwiękowego biurka Adriane daje możliwość korzystania z Linuksa również osobom niewidomym i niedowidzącym.
Klaus Knopper*
Istnieje wiele estetycznych środowisk biurkowych dla systemu Linux, z pulpitami umieszczonymi na ścianach obrotowych kostek, z trzęsącymi się jak galareta albo płonącymi okienkami, obsługujących gesty myszy do półautomatycznego wywoływania funkcji, które robią niewiarygodnie mądre rzeczy. Niestety od samego początku komputeryzacji, mocno wykorzystującej urządzenie wskazujące w postaci myszy komputerowej, graficzne interfejsy użytkownika były zaprojektowane jako ściśle oparte o wizualny kontekst. Weźmy na przykład środowisko biurkowe KDE z estetycznie dobranymi ikonami. Czy po wyłączeniu monitora będziemy w stanie uruchomić swój program pocztowy? A nawet jeśli to się uda, to czy zdołamy odczytać pocztę? Większość użytkowników nie jest nawet w stanie odszukać ikony programu bez wizualnego wsparcia ze strony monitora, ale ten sposób pracy jest zupełnie niedostępny dla użytkowników niewidomych.
Niektórzy dostawcy oprogramowania oferują „dodatki systemowe zwiększające poziom dostępności”, co powoduje złudzenie, że problem da się rozwiązać przez zakupienie większej liczby, często też bardzo kosztownego, oprogramowania komputerowego. Dodanie mechanizmu odczytywania menu i elementów interaktywnych oraz odczytu danych wprowadzanych z klawiatury może rzeczywiście uprościć korzystanie z komputera osobom, które nie były w stanie robić tego bez takich dodatków, ale główny problem polega na tym, że interfejsy użytkownika w większości programów zostały od podstaw zaprojektowane z myślą o graficznej reprezentacji na ekranie, co powoduje, że nawet komputer „czytający” na głos napisy na przyciskach i pozycje menu nie upraszcza pracy w dostatecznym stopniu.
Wiele z narzędzi i rozszerzeń niezbędnych do pracy użytkownikom z upośledzeniem widzenia, jak ślepota, niedowidzenie czy motoryczne lub psychiczne upośledzenie widzenia, jest już dostępnych w rodzinie oprogramowania open source, a także wchodzi w skład repozytoriów wielu dystrybucji GNU/Linux. Projekt Adriane łączy te technologie w ramach środowiska dźwiękowego, przeznaczonego dla użytkowników z upośledzeniami wzroku.
DOSTĘPNOŚĆ KONTRA RÓWNOUPRAWNIENIE
Wielu niewidzących użytkowników komputerów nie ma większego wyboru w zakresie oprogramowania wykorzystywanego w ich środowisku pracy. Decyzję najczęściej podejmuje pracodawca, który jest zobowiązany do udostępnienia oprogramowania zapewniającego narzędzia pracy. Zwykle obywa się to w oparciu o uproszczoną zasadę: wszyscy pracownicy firmy używają jednolitego oprogramowania, opcjonalnie wyposażonego o niezbędne rozszerzenia, a bez uwzględnienia opinii użytkowników upośledzonych wzrokowo, którzy z tego oprogramowania mają korzystać. Własnościowy system operacyjny komputera PC przystosowany do wykorzystania przez osobę niewidomą kosztuje od 7 do 12 tys. Euro, a pracodawca przyjmuje założenie, że coś, co kosztuje tak gigantyczną sumę pieniędzy, musi być dobre. Ale czy to prawda?
Pracodawcy podejmujący pochopne decyzje w zakresie usuwania barier oprogramowania nie tylko stają się przyczyną tworzenia nieefektywnych i frustrujących miejsc pracy dla osób niepełnosprawnych, ale też znacząco zmniejszają produktywność swoich firm przez niedocenienie potencjału efektywności tych osób przy zapewnieniu im odpowiednich warunków pracy. Osoba niewidząca wykorzystująca odpowiednie oprogramowanie może pracować równie szybko, a często znacznie szybciej od osoby używającej standardowego interfejsu GUI. Niewidomi potrafią odczytać, zrozumieć i zapamiętać całą stronę tekstu w czasie kilku sekund, podczas gdy zwykli użytkownicy nadal starają się oddzielić tekst strony WWW od treści reklam. Użytkownicy niewidomi są w stanie szybciej odszukać dobrą okazję i wygrać aukcję internetową, zanim użytkownicy interfejsu graficznego znajdą elementy formularza pozwalające na złożenie oferty. Jednak, aby to było możliwe, komputer musi oferować niewidzącemu użytkownikowi odpowiednie mechanizmy ułatwiające mu pracę w środowisku zorientowanym na aspekty wizualne.
ADRIANE WKRACZA DO AKCJI
Najefektywniejszym sposobem pracy z komputerem jest wiersz poleceń, ponieważ pozwala on na wywoływanie funkcji w bezpośredni sposób, dzięki czemu komputer wie dokładnie, jakie działania ma wykonać. Bezpośredni, zorientowany tekstowo interfejs użytkownika jest skupiony na zawartości, nie na układzie graficznym i otoczce wizualnej.
Nawet wczesne wersje systemu operacyjnego DOS pozwalały na przesyłanie zawartości ekranu tekstowego do urządzeń peryferyjnych przyłączonych do komputera za pośrednictwem portów szeregowych lub równoległych, jak drukarki, syntetyzery mowy lub urządzenia Braille’a. Graficzne interfejsy użytkownika spowodowały w pewnym sensie, że życie niepełnosprawnych użytkowników stało się trudniejsze.
Gdy zespół projektu Adriane prowadził analizę tej tematyki, ściśle współpracując zarówno z niewidzącymi użytkownikami (również zupełnie początkującymi), jak i z niewidzącymi programistami, jego uczestnicy doszli do wniosku, że to interfejsy powinny zostać przystosowane do możliwości użytkowników, zamiast starać się dopasować użytkownika do interfejsu, który nigdy nie był tworzony z myślą o osobach niewidomych.
Nazwa ADRIANE (Audio Desktop Reference Implementation And Networking Environment, czyli referencyjna implementacja biurkowego i sieciowego środowiska audio) sugeruje, że interfejs użytkownika nie wymaga do pracy monitora ani innej formy graficznej reprezentacji, ale stosownie do potrzeb użytkownika oferuje łatwy w użyciu, liniowy interfejs graficzny oparty na rozwijanych menu. Zamiast odkrywać koła na nowo, projekt Adriane integruje techniki, które już istnieją w ramach systemu GNU/Linux, jak czytniki ekranowe, techniki przekształcania tekstu w mowę, sterowniki do urządzeń Braille’a, nawigację klawiaturową i programy, które daje się w pełni obsługiwać bez korzystania z trybu wizualnego (Rysunek 1).
[fot. Zdjęcie przedstawia kobietę siedząca przed komputerem, podpis: Rysunek 1: Adriane obsługuje kompletne środowisko biurkowe dla użytkowników z upośledzeniami widzenia.]
Przyznam, że (zupełnie przypadkowo) „Adriane” to też imię mojej żony, która była pierwszą testerką i współtwórczynią tego środowiska z punktu widzenia użytkownika końcowego. Adriane była początkowo bardzo sceptyczna co do użyteczności interfejsu użytkownika pozbawionego elementów wizualnych, a to z powodu wcześniejszych złych doświadczeń z tego typu mechanizmami mającymi na celu ułatwienie pracy z komputerem osobom niewidomym. Nauczyła się wówczas korzystać z czytników Braille’a, a do konfiguracji i obsługi tych urządzeń niezbędna była osoba widząca. Korzystanie z Internetu z użyciem dostępnych wówczas narzędzi było całkowicie poza dyskusją. Osoba niewidząca mogła, co najwyżej, tworzyć dokumenty tekstowe z wykorzystaniem skomplikowanych skrótów klawiszowych.
Jednym z podstawowych założeń projektu Adriane jest uporządkowanie menu w płaską strukturę, bez konieczności zapamiętywania lub wpisywania poleceń. Pierwszy wiersz menu brzmi „Naciśnij [Enter], aby odsłuchać pomoc, lub strzałkę w dół, aby przejść do kolejnej funkcji”. To dobry punkt wyjścia dla użytkowników, którzy po raz pierwszy korzystają z niewizualnego interfejsu użytkownika. Na wniosek bardziej zaawansowanych użytkowników i programistów zdecydowaliśmy się na dodanie do podstawowego menu Adriane również funkcji Polecenie powłoki. To menu można także rozbudować samodzielnie i działa w trybie tekstowym i graficznym, a to dzięki bibliotekom dialog i Xdialog, co prezentuje Rysunek 2.
[fot. Screener menu Adriane, podpis: Rysunek 2: Proste menu środowiska Adriane są łatwe do nawigacji i przystosowania do potrzeb użytkownika.]
Środowisko Adriane towarzyszy szeregowi aplikacji, jak ELinks, Mutt, Irssi, MPlayer oraz Sane/OCRopus, co zapewnia obsługę większości działań wykonywanych w komputerze przez użytkowników. Aplikacje te działają w trybie tekstowym, co pozwala na ich obsługę z użyciem czytnika ekranowego. Jedną z funkcji, które jak do tej pory nie pojawiły się w komercyjnych środowiskach dla niewidzących użytkowników, jest możliwość odczytu i wysyłania wiadomości SMS z użyciem telefonu komórkowego: w każdym razie dotychczas nie dało się tego dokonać bez specjalizowanego oprogramowania w samej komórce. Jak się łatwo domyślić, wysłanie SMS-a jest bardzo utrudnione dla osoby nie-widzącej lub niedowidzącej, gdy musi korzystać z niewielkiego ekraniku telefonu. Z użyciem GMStools użytkownik środowiska Adriane może pobrać SMS-a do komputera i odpowiedzieć na niego, korzystając z edytora tekstu i normalnej klawiatury, zamiast niewygodnej w użyciu klawiatury numerycznej telefonu komórkowego.
Kolejne sekcje tego artykułu opisują wybrane programy i elementy środowiska Adriane. Skupiają się na funkcjach dedykowanych niewi-dzącym i niedowidzącym użytkownikom, choć oczywiście istnieją też funkcje przeznaczone dla użytkowników z upośledzeniami motorycznymi lub psychicznymi, jak rozpoznawanie głosu, klawisze stałe, nawigacja z użyciem kontrolerów nakładanych na głowę i tym podobne.
URZĄDZENIA BRAILLE’A I CZYTNIKI EKRANOWE
Najpopularniejsze sposoby ułatwiania obsługi komputera przez osoby niewidzące polegają na głosowym odczytywaniu zawartości ekranu oraz na transkrypcji komunikatów ekranowych na czytniki Braille’a. Czytnik Braille’a to urządzenie dotykowe reprezentujące każdą literę w postaci sześciu do ośmiu wypukłych punktów. Znaki są odczytywane za pomocą opuszków palców, oczywiście pod warunkiem, że użytkownik potrafi czytać Braille’a. Rysunek 3 przedstawia fragment transkrypcji alfabetu angielskiego na alfabet Braille’a. Każdy język wykorzystuje inną tabelę transkrypcji, nie są obsługiwane specjalne znaki, a cyfry są reprezentowane za pomocą specjalnego znaku przedrostka.
[fot. Grafika przedstawia tabelę z transkrypcją brajlowską, podpis: Rysunek 3: Angielski alfabet w transkrypcji Braille’a.]
W przypadku systemu Linux najważniejszymi programami do odczytu zawartości ekranu oraz obsługi Braille’a są brltty [2] i SUSE Blinux (SBL) [3].
Brltty to prawdopodobnie najbardziej znany sterownik Braille’a dla Linuksa, natomiast siła SBL polega na tym, że pozwala na implementację obsługi Braille’a i odczytu głosowego dla różnych aplikacji z obsługą profili. SBL pozwala ponadto na nawigację po ekranie z użyciem klawiszy urządzenia Braille’a, jak również na obsługę nawigacji ekranowej za pomocą samej klawiatury. Z tych powodów SBL jest podstawowym mechanizmem czytnika ekranu dla systemu Adriane.
Do nawigacji za pomocą klawiatury oraz obsługi funkcji SDB Adriane stosuje się rzadko używany klawisz [Caps Lock], przykłady funkcji przedstawia Tabela 1.
Tabela 1:
Caps Lock-arrow up – Odczyt poprzedniego wiersza
Caps Lock-arrow down – Odczyt kolejnego wiersza
Caps Lock-page up – Odczyt od początku strony
Caps Lock-page down – Odczyt do końca strony
Caps Lock-f/s – Przyspieszenie, Speak faster/slower
Caps Lock-l/p – Switch language
Za pomocą tych kilku kombinacji klawiszy można poznawać interfejs programu, odczytując jego zawartość wiersz po wierszu, nawet przy wyłączonym monitorze lub w przypadku gdy użytkownik nie może zobaczyć jego zawartości. Nie ma co prawda możliwości zapoznania się z całym zestawem dostępnych opcji jednocześnie, ale za pomocą klawiatury użytkownik może przejść do dowolnego zestawu funkcji i dowolnego obszaru ekranu.
Orca [4] to czytnik ekranu napisany w języku Python przeznaczony dla aplikacji graficznych. Ten program wykorzystuje bibliotekę Gtk2 oraz technologię AT-SPI (Assistive Technology Service Provider Interface). Czytnik ekranowy Orca odczytuje etykiety menu, przycisków i obszarów zawierających tekst (jak główny panel okna przeglądarki WWW) i przesyła je do urządzenia Braille’a lub syntezatora dźwięku. Orca posiada również funkcję powiększania ekranu, która jednak nie działała prawidłowo w naszych testach.
Orca umożliwia osobom z upośledzeniami wzroku pracę z takimi aplikacjami, jak OpenOffice 2.3, bo uzupełnia ich obsługę o syntezę mowy i urządzenia Braille’a. Użytkownik jest jednak zmuszony do poznania kombinacji klawiszy wywołujących poszczególne funkcje programu, które są normalnie obsługiwane za pomocą myszy. Orca nie tylko odczytuje „wizualne” porcje tekstu, ale też potrafi obsługiwać metainformacje dotyczące tekstu, jak czcionka i parametry wyświetlania, typy elementów formularza itd. Choć Orca została napisana głównie z myślą o pracy w środowisku Gnome, działa bez problemów ze wszystkimi menedżerami okien, pod warunkiem, że obsługują one technologię AT-SPI. Do aplikacji obsługujących AT-SPI zalicza się Firefox, OpenOffice, wieloprotokołowy komunikator internetowy pidgin, a nawet Gimp (częściowo). Jeśli Orca ma być użyta z poziomu Gnome, należy ustawić kilka parametrów środowiska, które aktywują obsługę AT-SPI w aplikacjach Gtk2:
export SAL_USE_VCLPLUGIN=”gtk”
export GTK_MODULES= <-
„gail:atk-bridge"
orca &
soffice document.odt
Orca posiada wtyczki zarówno do brltty, jak i SBL, zatem te same sterowniki Braille'a, które działają w trybie tekstowym mogą być użyte do pracy w środowisku graficznym.
Choć Orca umożliwia osobie niewidomej pracę z aplikacjami projektowanymi z myślą o obsłudze myszą, interfejsy graficzne zawierające większą liczbę przycisków i menu to nie jest optymalne środowisko do obsługi narzędziami niegraficznymi. Innymi słowy: praca z tego typu interfejsami w przypadku osoby niewidzącej jest wolniejsza i bardziej skomplikowana. A pełne nieszczęście następuje wówczas, gdy program zostanie omyłkowo zminimalizowany lub gdy program zostanie zminimalizowany lub przejdzie na drugi plan, ponieważ inna aplikacja nagle wyświetli na pierwszym planie jakieś okienko dialogowe. Okno, w którym pracował użytkownik, stanie się niedostępne dla czytnika ekranowego aż do momentu, gdy właściwe okno zostanie przywrócone na pierwszy plan. Dla niewidomego użytkownika to trudna sytuacja, chyba, że wie czego się spodziewać i potrafi za pomocą samej klawiatury przywrócić właściwy stan środowiska roboczego: przywrócić z minimalizacji lub przenieść na pierwszy plan odpowiednie okno (najczęściej [Alt]+[Tab]). Jednak dla osoby niewidzącej nie jest oczywiste, czy okno zostało zminimalizowane, przesłonięte przez inne, czy po prostu zamknięte albo może czytnik ekranowy lub sterownik Braille'a zawiesił się z powodu błędu w oprogramowaniu. Z tych powodów środowiskiem pracy najczęściej stosowanym przez osoby z upośledzeniami wzroku jest konsola tekstowa, w której okna nigdy nie są przenoszone na drugi plan i zawsze działają na „pełnym ekranie".
Czytnik ekranowy przesyła tekst do urządzenia Braille'a lub syntezatora mowy, ale dane są wprowadzane na zwykłej klawiaturze. Choć osoby niewidzące nie widzą, co w danej chwili napisały, to warto zauważyć, że znakomita większość klawiatur posiada wypukłości na dwóch klawiszach: F i J. Dzięki temu łatwo zachować orientację na klawiaturze, nie tylko osobom niewidzącym. Taka sama zasada jest stosowana w przypadku klawiatur telefonów komórkowych, w których oznaczony jest przycisk z cyfrą 5. W przypadku osób niewidomych dodatkowo oznacza się też inne klawisze, często za pomocą grotu lutownicy. Dzięki temu uzyskują dodatkowe wskazówki orientacyjne.
KONWERSJA TEKSTU NA MOWĘ
Aby komputer był w stanie odczytać głosowo zawartość ekranu, niezbędny jest syntezator mowy. Teoria lingwistyczna stojąca za mechanizmami syntezy mowy z pewnością zapełniłaby kilka książek. Dość jednak stwierdzić, że istnieją reguły fonetyczne rządzące zasadą prawidłowej reprezentacji w mowie tekstu pisanego (a raczej kombinacji liter i sylab). Do tego dochodzą wyjątki, które musi uwzględniać program, jakich, w zależności od języka, mogą istnieć tysiące. Proste łączenie dźwięków poszczególnych liter nie sprawdza się: powstaje niezrozumiały bełkot. Z tego powodu wysokiej jakości syntezatory wykorzystują większe (unit selection) lub nieco mniejsze (diphone lub half-syllable synthesis) porcje nagranej wstępnie ludzkiej mowy i łączą je w tekst wynikowy. Rejestrowanie i nadawanie etykiet fragmentom mowy to bardzo czasochłonne zadanie i niestety wynik tego typu prac rzadko bywa dostępny na licencji pozwalającej na nieograniczoną dystrybucję.
Festival [5] to bardzo zaawansowany syntezator mowy, ale tworzenie bazy mowy i zestawu reguł dla tego programu to niełatwe zadanie, ponieważ do definiowania reguł Festival wykorzystuje składnię zbliżoną do języka lisp, a baza danych składowych mowy zawiera około 3000 próbek audio, z których sklejane są wynikowe odczyty. Jak do tej pory dla programu Festival dostępnych jest kilka wolnych głosów. Dużą bazę głosów udało się zgromadzić projektowi Mbrola udostępnianemu w postaci binarnych pakietów do „darmowego niekomercyjnego użytku", jednak ta licencja nie pozwala na wolną dystrybucję i jest niezgodna z licencjami open source. Jest też kilka innych komercyjnych syntezatorów mowy, ale te artykuł skupia się na open source i free software. W przypadku Adriane najlepszym rozwiązaniem tego typu jest eSpeak [6], który wykorzystuje bardo niewielką ilość pamięci i mocy procesora, potrafi obsłużyć ponad trzydzieści języków i jest łatwo rozszerzalny. Wykorzystuje w pełni syntetyczne podejście, nie stosuje nagranych naturalnych próbek ludzkiego głosu, przez co czytane teksty brzmią nieco „mechanicznie". Z drugiej strony to system w pełni wolny i nie obciążony żadnymi restrykcjami licencyjnymi.
Do koordynowania poszczególnych zasobów syntezy mowy w wielu systemach dostępności wykorzystywany jest mechanizm Speech Dispatcher [7]. Speech Dispatcher potrafi przerwać odczyt dłuższego tekstu w celu przekazania użytkownikowi istotnego komunikatu systemowego, a następnie powrócić do odczytu, obydwa teksty mogą być opcjonalnie odczytane różnymi głosami. SBL i Orca (w aktualnych wersjach) do udostępniania syntezy mowy różnym programom wykorzystują właśnie możliwości mechanizmu Speech Dispatcher.
Wszystkie mechanizmy dostępności, jak Speech Dispatcher, kbd (sterownik nawigacji za pomocą klawiatury) i SBL (czytnik ekranowy) są uruchamiane w odpowiedniej kolejności przez program adriane-screenreader.
POWIĘKSZANIE EKRANU I KOLOR
Mogłoby się wydawać, że nowoczesne menedżery okien wyposażone w efekty 3D, jak Compiz Fusion, z tymi wszystkimi efektami graficznymi i trzęsącymi się okienkami, nie za bardzo nadają się do pracy przez użytkowników z upośledzeniami wzroku. Jak się jednak okazuje na przykład Compiz oferuje kilka funkcji, które mogą być bardzo przydatne dla użytkowników z poważnymi ograniczeniami widzenia.
Jednym z przykładów takich udoskonaleń, którego nie udało się znaleźć gdziekolwiek indziej, oprócz Compiza, jest narzędzie powiększające zawartość fragmentu ekranu, które potrafi śledzić aktywny obszar i odpowiednio przesuwać okno powiększenia. Niektórzy użytkownicy znają również możliwość przełączania się między rozdzielczościami, wbudowaną w Xorg: naciśniecie kombinacji klawiszy [Ctrl]+[Alt]+[+] zwiększa, a kombinacji [Ctrl]+[Alt]+[-] zmniejsza rozdzielczość ekranu (klawisze + i - na klawiaturze numerycznej). Ta możliwość może być użyta w charakterze dość skutecznego narzędzia do powiększania ekranu, ale jeśli kursor myszy znajduje się na przykład w lewym górnym wierzchołku ekranu trudno zauważyć, że jakieś ważne okienko pojawiło się w prawym dolnym wierzchołku. Wtyczka Enhanced Zoom do Compiz Fusion automatycznie przesunie widzialny obszar w taki sposób, aby użytkownik zobaczył to nowe okienko, a przy okazji zmodyfikuje poziom powiększenia tak, żeby okno zmieściło się w całości na ekranie. W przeciwieństwie do mechanizmu przełączania rozdzielczości znanego z Xorg, wtyczka Enhanced Zoom powiększa też rozmiar kursora myszy, co jest równie ważne dla użytkowników z poważnymi wadami wzroku. Jeśli znalezienie kursora na ekranie nadal sprawia problem, możemy zastosować wtyczkę Mouse Visibility, której aktywacja powoduje, że wokół kursora zaczynają obracać się migające ogniki.
Istnieje też druga wtyczka powiększająca jedynie fragment ekranu znajdujący się w danej chwili pod kursorem, która może być preferowana, jeśli potrzebujemy podglądu całego ekranu (Rysunek 4).
[fot. Grafika przedstawia tekst powiększony za pomocą lupy, Rysunek 4: Wtyczka menedżera efektów 3D Com-piz powiększająca fragment ekranu znajdujący się pod kursorem myszy.]
W przypadku niektórych rodzajów upośledzeń wzroku, jak na przykład daltonizm, istnieje możliwość zwiększenia nasycenia wybranymi składowymi barw w stosunku do innych albo zwiększenia nasycenia wszystkich kolorów (co przydaje się również w przypadku prezentacji na urządzeniach o słabym nasyceniu kolorów).
PRZEGLĄDARKI WWW Z FUNKCJAMI DOSTĘPNOŚCI
ELinks, „eksperymentalna" przeglądarka WWW wywodzi się od znanej tekstowej przeglądarki WWW Links. Oferuje kilka funkcji, które są bardzo praktyczne w połączeniu z czytnikami ekranowymi. Obsługuje kaskadowe arkusze stylów (CSS) i JavaScript, dzięki czemu użytkownik ma możliwość korzystania ze stron WWW, które nie chcą działać w przeglądarkach pozbawionych obsługi JavaScriptu.
Mechanizm SBL jest skonfigurowany w taki sposób, że ELinks odczytuje jedynie tekst w ramach znaczników [mniejsze]a href[większe], ale nie czyta tekstu opisowego. Dzięki temu użytkownikma możliwość nawigowania w pierwszej kolejności między odnośnikami, a dopiero po osiągnięciu pożądanego adresu - przełączenia trybu odczytu na pełny.
Graficzne przyciski lub symbole nietekstowe nie mogą być wyświetlone w trybie tekstowym, co powoduje dodatkowe bariery dostępności dla użytkowników z wadami wzroku. Ponadto znany mechanizm uwierzytelniający o nazwie „captcha", polegający na prezentacji użytkownikowi obrazków zawierających mocno zniekształcony tekst, to przykład tworzenia rozwiązań z założenia nieprzyjaznych dla użytkowników niewidomych. Mimo tego, że ELinks nie ma zbyt wielu możliwości rozwiązywania problemów generowanych przez tego typu bariery, oferuje kilka narzędzi, za pomocą których użytkownik ma możliwość uzyskania dostępu do „niewidzialnych" elementów formularzy oraz do wysyłania zawartości formularzy pozbawionych klawisza typu Wyślij.
Rysunek 5 przedstawia porównanie między oknami przeglądarek Konqueror i ELinks, wyświetlającymi przeładowaną grafiką wersję WAP serwisu eBay [8].
[fot. Screener stron internetowych wyświetlanych za pomocą przeglądarek graficznych, podpis: Rysunek 5: Portal WAP serwisu eBay w przeglądarkach Konqueror i ELinks.]
Elementy graficzne na stronach WWW również mogą być „widoczne" w środowisku tekstowym, pod warunkiem, że definiujące je znaczniki zawierają odpowiednie metainformacje (jak „textarea", „submit button" itp.) oraz tytuły i etykiety, do których definiowania wykorzystywane są na przykład parametry ALT i TITLE znacznika [mniejsze]IMG[większe]. Jeśli obraz nie ma zdefiniowanego opisu, nie będzie „widoczny" dla użytkownika, chyba że zastosuje on mechanizm typu OCR (Optical Character Recognition, optyczne rozpoznawanie znaków), a obraz zawiera elementy tekstowe.
ELinks potrafi wykorzystać program fbi do wyświetlania obrazów w konsoli tekstowej, co stanowi ciekawą opcję dla użytkowników widzących. Na tej samej zasadzie można odtwarzać filmy wideo; służy do tego program MPlayer, który ma możliwość wyświetlania filmów z wykorzystaniem sterownika bufora ramki i nie wymaga działającego sytemu Xorg.
ROZPOZNAWANIE TEKSTU
Do przekształcania korespondencji papierowej na format elektronicznego tekstu (który może być odczytany głosowo) służy oprogramowanie klasy OCR. Przez dłuższy czas jedyną opcją tego typu dla Linuksa był program GOCR, który przekształcał zeskanowane obrazy na dokumenty tekstowe. Niedawno firma Google zainicjowała nowy projekt open source o nazwie OCRopus [9], który składa się z modułu analizy układu graficznego dokumentu, dzięki czemu tekst przed poddaniem procesowi OCR jest dzielony na logiczne kolumny i obszary. Silnik OCR oparty jest na projekcie Tesseract, którego metoda do rozpoznawania tekstu wykorzystuje analizę prawdopodobieństwa. Rozwojowa wersja mechanizmu OCRopus już w tej chwili daje bardzo dobre wyniki, zatem można zastosować kombinację programu OCRopus oraz menedżera skanowania Sane [10] i za jej pomocą wczytywać do komputera drukowane listy i książki.
INSTALACJA ADRIANE
System Adriane jest dostępny na Knop-pix Live CD i DVD, począwszy od wersji 5.3 tej dystrybucji: należy wybrać opcję adriane menu rozruchowego. Obraz ISO dystrybucji Knoppix można zmodyfikować w taki sposób, aby domyślnie uruchamiał się system Adriane: w tym celu należy zmodyfikować plik konfiguracyjny boot/isolinux/isolinux.cfg.
W wersji SBL 3.2.1 autor tego projektu, Marco Skambraks, dodał demona obsługi klawiatury, który upraszcza nawigację na ekranie, dzięki czemu wymagana dotychczas łata na jądro keyboard sniffer nie jest już niezbędna, wystarczy załadować moduł jądra uinput. Dzięki temu Adriane można już obecnie instalować jako rozszerzenie dystrybucji Debian: wystarczy zainstalować odpowiednie pakiety w sposób opisany na stronie projektu Adriane [1].
Po poprawieniu konfiguracji systemu Xorg preinstalowanego na komputerze Asus EeePC, która nie wykorzystywała mechanizmu AIGLX, przeprowadziliśmy kilka eksperymentów (Rysunek 6) i stworzyliśmy rozruchowy dysk SD flash zawierający Adriane, Orca i Compiz Fusion. W połączeniu z zewnętrzną klawiaturą USB ze znacznikami dla niewidomych i odpowiednio dużym ekranem TFT uzyskaliśmy niekosztowne, dostępne i przenośne środowisko Adriane.
PODSUMOWANIE
Mimo tego, że społeczność Linuksa oferuje dużą liczbę narzędzi i bibliotek wspomagających pracę osób z upośledzeniami, połączenie ich wszystkich w jedno sprawnie działające środowisko nie jest prostym zadaniem. Dlatego istotne, aby dać użytkownikom dostęp do preinstalowanego i skonfigurowanego środowiska tego typu. Adriane jest odpowiedzią na tę potrzebę, łączy bowiem wszystkie niezbędne elementy w jedno łatwe w użyciu środowisko biurkowe wyposażone w funkcje syntezy głosu.
INFO
[1] Projekt Adriane:
http://knopper.net/knoppix-adriane/index-en.html
[2] brltty:
http://mielke.cc/brltty/
[3] SUSE Blinux:
http://en.opensuse.org/SUSE_Blinux
[4] Orca:
http://live.gnome.org/Orca
[5] Festival:
http://www.cstr.ed.ac.uk/projects/festival/
[6] eSpeak:
http://espeak.sourceforge.net/
[7] Speech Dispatcher:
http://www.freebsoft.org/speechd
[8] Wersja WAP serwisu eBay:
http://wap.ebay.com
[9] OCRopus:
http://code.google.com/p/ocropus/
[10] Sane:
http://www.sane-project.org/
* Artukuł pochodzi z Linux-magazine, numer 54, sierpień 2008