Pango - Pango

Pango
Pango-name.svg
Imię Pango napisane zgodnie z przeznaczeniem
Pierwotni autorzy Owen Taylor
Raph Levien
Deweloper (y) Behdad Esfahbod
Pierwsze wydanie 11 lipca 1999 ; 21 lat temu  ( 11.07.1999 )
Wersja stabilna 1,80,4 (30 marca 2021 r . ; 19 dni temu ) [±]  ( 30.03.2021 )
Magazyn Edytuj to w Wikidata
Napisane w do
System operacyjny Podobny do systemu Unix , Microsoft Windows , inny
Rodzaj Biblioteka do tworzenia oprogramowania
Licencja LGPL
Stronie internetowej www .pango .org

Pango (stylizowane na Παν 語) jest biblioteką silnika układu tekstu (tj. Glifów ), która współpracuje z silnikiem kształtowania HarfBuzz do wyświetlania tekstu w wielu językach.

Pełnofunkcyjne renderowanie tekstu i obsługę wielu platform jest osiągane, gdy Pango jest używane z interfejsami API platformy lub bibliotekami innych firm, takimi jak Uniscribe i FreeType , jako zaplecze renderujące tekst . Tekst przetworzony przez Pango będzie wyglądał podobnie w różnych systemach operacyjnych.

Pango jest biblioteką specjalnego przeznaczenia dla tekstu, a nie biblioteką do renderowania grafiki ogólnego przeznaczenia, taką jak Cairo , z którą można używać programu Pango. Dokumentacja z Kairu zaleca używanie Pango do "renderowania" tekstu zamiast "Cairo" dla wszystkich, z wyjątkiem najprostszego "renderowania" tekstu.

Historia i nazewnictwo

Nazwa pango pochodzi od greckiego pan (παν, „all”) i japońskiego go (語, „ język ”).

W styczniu 2000 roku połączenie projektów GScript i GnomeText zostało nazwane Pango.

Wersja Pango 1.0.0 została wydana 11 marca 2002.

Obsługa funkcji OpenType

Domyślne renderowanie powyżej, zlokalizowane rumuńskie renderowanie poniżej.

Pango 1.17 i nowsze obsługują znacznik funkcji locl, który pozwala na użycie zlokalizowanych glifów dla tego samego punktu kodowego Unicode. Zakładając, że masz zainstalowaną wersję Verdana 5.01, która obsługuje funkcję locl dla skryptu latn / ROM (rumuński), szybka demonstracja (w systemie Linux) to:

for lang in en ro; do pango-view \
 --font="Verdana 64" \
 --text "şţ vs. șț in $lang" \
 --language=$lang; done

Aby uzyskać wyjaśnienie zasad zastępowania języka rumuńskiego, zobacz tę dyskusję .

Ustawienie locale poprzez zmienną środowiskową POSIX, np. LANG = ro_RO.UTF-8 również spowoduje, że Pango użyje funkcji czcionki locl . Wreszcie, możesz zmienić język w locie w tym samym tekście za pomocą znaczników Pango , np:

pango-view \
 --font="Verdana 24" \
 --markup \
 --text 'In the same text: şţ(en) and <span lang="ro">şţ(ro).</span>'

Od wersji 1.37.1 Pango dodał więcej atrybutów, aby zapewnić pełną obsługę funkcji przetwarzania OpenType.

Oficjalna prezentacja funkcji obsługujących skrypty Pango znajduje się tutaj .

Główni użytkownicy

Uproszczona architektura oprogramowania GTK . Pango, GDK , ATK , GIO , Cairo i GLib .

Pango zostało zintegrowane z większością dystrybucji Linuksa. Zestaw narzędzi GTK UI wykorzystuje Pango do całego renderowania tekstu. The Linux wersje Mozilla Firefox przeglądarki internetowej i Mozilla Thunderbird klient poczty użyciu Pango dla renderowania tekstu.

Zobacz też

Bibliografia

Linki zewnętrzne