Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Obsługa języków RTL

Termin Definicja
Obsługa języków RTL

Obsługa języków RTL to poprawne wyświetlanie pism zapisywanych od prawej do lewej, np. arabskiego i hebrajskiego.

Jak działa zapis od prawej do lewej

Obsługa języków RTL, czyli języków zapisywanych od prawej do lewej, polega na prawidłowym przedstawianiu tekstu, którego podstawowy kierunek pisma różni się od kierunku stosowanego w języku polskim. Dotyczy to przede wszystkim arabskiego, hebrajskiego, perskiego i urdu. Sam kierunek przepływu tekstu nie jest jednak jedyną zmianą. Program musi także poprawnie rozmieszczać znaki, dobierać ich kształty, obsługiwać znaki interpunkcyjne oraz łączyć fragmenty RTL z elementami zapisanymi od lewej do prawej.

Podstawą takiego działania jest kodowanie znaków Unicode oraz implementowany przez oprogramowanie algorytm dwukierunkowy Unicode Bidirectional Algorithm. Algorytm rozpoznaje właściwości poszczególnych znaków i ustala ich wizualną kolejność w wierszu. Dzięki temu tekst hebrajski lub arabski może występować w jednym zdaniu obok polskich słów, adresu internetowego, numeru telefonu albo liczb. Kolejność znaków w pamięci komputera nie musi wtedy odpowiadać kolejności widocznej na ekranie.

W języku arabskim znaczenie ma również kształt litery zależny od jej położenia w wyrazie. System składu tekstu musi wykonać kształtowanie pisma, czyli dobrać odpowiednie glify i połączyć litery zgodnie z regułami danego alfabetu. W języku hebrajskim litery zasadniczo nie łączą się w ten sam sposób, ale nadal potrzebne są właściwe fonty, kierunek tekstu i prawidłowe rozmieszczenie znaków samogłoskowych oraz innych oznaczeń.

Połączenie kierunków tekstu w jednym interfejsie

Dokument lub aplikacja nie musi mieć wyłącznie jednego kierunku pisma. W praktyce często występują fragmenty mieszane: opis w języku arabskim, liczba zapisana cyframi europejskimi, nazwa pliku, kod programu albo adres URL. Taki układ wymaga rozróżnienia kierunku całego akapitu od kierunku pojedynczego elementu. Ustawienie kierunku wyłącznie za pomocą ręcznego odwracania znaków prowadzi do błędnej kolejności liter, problemów z zaznaczaniem i nieprawidłowego kopiowania tekstu.

W dokumentach internetowych kierunek można określić między innymi za pomocą atrybutu HTML dir, którego wartościami są rtl, ltr oraz auto. W arkuszach stylów CSS stosuje się właściwość direction, a w odpowiednich układach także unicode-bidi. W aplikacjach kierunek interfejsu powinien obejmować nie tylko akapity, lecz również pola formularzy, przyciski, listy, tabele, menu i pozycje nawigacyjne. Elementy o ustalonym kierunku, takie jak adresy internetowe lub fragmenty kodu, wymagają czasem osobnego oznaczenia jako zapis od lewej do prawej.

Zmiana kierunku tekstu nie zawsze oznacza lustrzane odbicie całego interfejsu. Niektóre symbole, nawiasy i znaki interpunkcyjne są rozmieszczane zgodnie z regułami Unicode Bidirectional Algorithm, natomiast ikony przedstawiające kierunek ruchu mogą wymagać osobnego dostosowania. Błędna implementacja może spowodować, że nawias zamykający pojawi się w niewłaściwym miejscu, numer zostanie odczytany w złej kolejności albo kursor będzie przeskakiwał podczas edycji.

Fonty, klawiatura i zapis plików

Do prawidłowego wyświetlania RTL potrzebny jest font zawierający glify używanego alfabetu. Jeżeli czcionka nie ma określonych znaków, system może wyświetlić prostokąt, znak zastępczy albo użyć fontu awaryjnego o odmiennej wysokości i szerokości liter. Taka sytuacja bywa widoczna po przeniesieniu dokumentu na inny komputer, po zmianie systemu operacyjnego lub po otwarciu pliku w programie, który korzysta z innego mechanizmu renderowania tekstu.

Istotne jest także właściwe kodowanie pliku. Dokument zapisany jako UTF-8 może przechowywać znaki arabskie i hebrajskie bez zastępowania ich uproszczonymi kodami lokalnymi. Problemy pojawiają się, gdy aplikacja błędnie rozpoznaje kodowanie, usuwa znaki sterujące kierunkiem albo podczas eksportu do innego formatu nie zachowuje informacji o kroju pisma. Samo ustawienie języka klawiatury nie naprawia takiego pliku, ponieważ zmienia przede wszystkim sposób wprowadzania znaków, a nie sposób ich interpretowania przez program.

Podczas pisania potrzebny jest układ klawiatury odpowiadający wybranemu językowi, a w niektórych systemach również metoda wprowadzania znaków, na przykład edytor pozwalający tworzyć znaki z użyciem znaków diakrytycznych. Warto rozdzielić trzy kwestie: język interfejsu, język sprawdzania pisowni oraz układ klawiatury. Mogą być ustawione niezależnie. Nieprawidłowe przypisanie jednego z tych elementów może powodować wrażenie, że obsługa RTL nie działa, mimo że sam program potrafi poprawnie wyświetlić gotowy tekst.

Rozpoznawanie problemów z obsługą RTL

Diagnostykę należy rozpocząć od ustalenia, czy problem występuje w jednym programie, w konkretnym dokumencie, czy w całym systemie. Jeżeli tekst jest poprawny w przeglądarce, ale błędny w edytorze, przyczyną może być ustawienie kierunku akapitu, brak odpowiedniego fontu albo ograniczenie silnika składu używanego przez ten edytor. Jeżeli nieprawidłowości pojawiają się wszędzie, trzeba sprawdzić dostępne języki, układ klawiatury, czcionki i ustawienia regionalne systemu.

W teście warto użyć krótkiego tekstu arabskiego lub hebrajskiego zawierającego litery, cyfry, nawiasy, przecinek, adres internetowy i fragment zapisany po polsku. Należy sprawdzić wyświetlanie, zaznaczanie, kopiowanie, usuwanie pojedynczych znaków, zawijanie wierszy oraz zapis i ponowne otwarcie pliku. Osobno powinno się zweryfikować pola formularzy, nazwy plików i komunikaty systemowe, ponieważ każdy z tych elementów może korzystać z innego komponentu renderującego.

Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów i komputerów PC, w tym diagnostyką problemów z konfiguracją systemu, fontami, klawiaturą oraz wyświetlaniem tekstu w popularnym oprogramowaniu biurowym.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę