Otóż fonty w postaci elektronicznej przybywają na rynek polski głównie ze Stanów Zjednoczonych i są dostosowane do potrzeb tamtejszego rynku, zarówno jeśli chodzi o zestaw znaków jak i kodowanie znaków. W związku z tym w układzie dystrybuowanych fontów nie znajdują odbicia ani potrzeby Polaków, ani TeX-owców.
Problem ten od paru lat był przedmiotem prac nieformalnej grupy członków GUST-u. W pracach brali udział: Włodek Bzyl, Bogusław Jackowski, Janusz M. Nowacki, Andrzej Odyniec, Piotr Pianowski, Marek Ryćko, Andrzej Tomaszewski, Staszek Wawrykiewicz oraz wielu innych, którzy dobrym lub krytycznym słowem pomagali popychać sprawę do przodu.
Efektem prac jest właśnie układ
Układ
Oto najważniejsze z tych zasad:
Oczywiście nie można oczekiwać stuprocentowej zgodności, na przykład niektóre fonty są zaprojektowane bez ligatur związanych z literą ,,f''. Wydaje się, że brak niektórych znaków jest stosunkowo niegroźny.
Nieprzyjemne konsekwencje może mieć natomiast decyzja zastępowania
pewnych znaków innymi. Mimo to taki pomysł przyszedł do głowy nawet
samemu Donaldowi E. Knuthowi: w fontach rodziny Computer
Modern font cmr5
ma nieco inny zestaw znaków niż
pozostałe fonty szeregu CMR
-- przykra niespodzianka
wydaje się wcześniej czy później nieunikniona. Jednak i takie
sytuacje mogą być nie do uniknięcia, np. pisanki z reguły
mają więcej ligatur niż zwykłe fonty drukarskie. Należy zatem dbać
o to, by przynajmniej podstawowe znaki (litery) miały przypisane
zawsze te same kody.
TeX operuje jedynie na fontach co najwyżej 256-znakowych -- to
poważne ograniczenie. Zostało ono oczywiście uwzględnione przy
projektowaniu układu
Ze względu na powszechność fontów
Podobna zasada była ściśle przestrzegana przy projektowaniu
pakietu MeX: fonty
Wolno sądzić, że pakiet MeX zadomowił się w środowisku polskich
użytkowników TeX-a. Ze względu na istnienie pakietu MeX jest wskazane,
by font był rozszerzeniem układu
W związku ze składaniem polskich tekstów technicznych przydatne są znaki specyficzne dla polskiej literatury technicznej. Zagadnienie to omówione jest przy okazji analizowania konsekwencji zasady 4.
W fontach anglosaskich powszechnie obecna jest ligatura ,,fl''
(czasem także ,,ffl''). Nie widać żadnego powodu, dla którego
w polskich fontach nie miałoby być ligatury
,,fk''. W polskim języku jest wprawdzie znacznie więcej słów
zawierających digram ,,fl'' niż słów zawierających digram ,,fk'',
niemniej jednak są takie słowa: agrafka, cofka,
dryfkotwa, fifka, Kafka, karafka,
lufka, mufka, sofka, szafka. Bez
ligatury ,,fk'' wyglądają one niezbyt ładnie ze względu na
kolizję liter ,,f'' i ,,k'', analogiczną do kolizji liter ,,f''
i ,,l''. Stąd obecność ligatury ,,fk''
w układzie
Z punktu widzenia tekstów technicznych pożądana jest obecność niektórych małych greckich liter w foncie. Np. litera mu pojawia się w oznaczeniach jednostek (przedrostek mikro). Litera pi wydaje się również warta uwzględnienia. Najlepiej byłoby móc zawrzeć w foncie cały alfabet grecki. Niestety, szczupłość miejsca i obszerność potrzeb wykluczają taką możliwość.
Jako jednostki używane są czasem symbole quotesingle (minuta), quotedbl (sekunda lub cal), degree (stopień) -- ich brak wcześniej czy później zaczyna dokuczać.
Określenie ,,teksty techniczne'' niekoniecznie musi oznaczać teksty o profilu matematycznym lub inżynierskim. Teksty prawne również można zaliczyć do tekstów technicznych. Brak symbolu section w standardowych fontachCMSY
) dawał się dotkliwie odczuć
w praktyce.
\accent
. Jeżeli
akcent nie styka się z literą (akcenty ,,acute'', ,,grave'',
,,dieresis'' itp.) zabieg taki jest dopuszczalny. Można też skorzystać
z bardzo ogólnego mechanizmu konstruowania znaków złożonych,
mianowicie z fontów wirtualnych. Dzięki fontom wirtualnym znaki
złożone są widziane przez TeX-a jako zwykłe, pojedyncze
znaki. Tworzenie fontów wirtualnych jest jednak pracochłonne (brak
póki co wygodnych narzędzi) i wymaga sporej wiedzy, tak TeX-owej,
jak i typograficznej.
Niestety, niektóre znaki tworzą z elementem diakrytycznym jedną
całość. Wymienić tu należy w pierwszym rzędzie polskie
i litewskie litery z ogonkiem (,,ą'', ,,ę'', iogonek, uogonek
i odpowiednie majuskuły) oraz litery z cedillą (ccedilla, scedilla, tcedilla i odpowiednie majuskuły). Inne znaki
diakrytyczne tego rodzaju to islandzkie thorn, Thorn czy eth. W dobrze
zaprojektowanych fontach takie znaki nie mogą być ,,składanką'' --
muszą stanowić spójnie zaprojektowaną całość.
Font powinien zawierać pewne ,,uświęcone tradycją'' znaki
dodatkowe. Takie symbole jak ,,copyright'' czy ,,registered'' powinny być zgodne z bieżącym
fontem. Teoretycznie wystarczyłoby kółko, w które za pomocą makra
TeX-owego wstawiało by się odpowiednie litery. Każdy, kto próbował
używać plain-owego makra \copyright
, wie, że nie jest to pomysł
najszczęśliwszy -- pozycjonowanie liter wewnątrz koła musi być
przeprowadzone dla każdego fontu (a nawet dla każdej odmiany)
osobno, co wyklucza możliwość automatyzacji.
Symbole ,,dagger'' i ,,daggerdbl'' są wprawdzie stosunkowo rzadko używane (ich używanie to w zasadzie zwyczaj anglosaski), jednakże kształt tych symboli jest specyficzny dla danego fontu, tym samym -- dla pełności -- font powinien je zawierać.
Inne symbole potrzebne sporadycznie to ,,bullet'' i ,,periodcentered''. Na pierwszy rzut oka mogłoby się wydawać, że znaki te nie są w żaden sposób z konkretnym fontem związane. To oczywiście nieprawda, na przykład kształt kropki zależy od fontu. Sięganie do innego fontu po te znaki lub przesuwanie kropki w celu uzyskania drugiego z nich jest zabiegiem niezwykle uciążliwym ze względu na trudności w wyważeniu położenia obu znaków.
Rozpowszechniona obecnie wersja środowiska Windows nakłada dodatkowe
ograniczenia na liczbę znaków w foncie: znakom nie można
przypisać kodów większych niż 255 i mniejszych
niż 32. Redukuje to maksymalną liczbę znaków w foncie
dających się równocześnie wykorzystać
do 224. W układzie
Dalsze zmniejszenie puli wolnych miejsc wiąże się ze znakami o niewielkiej użyteczności z punktu widzenia TeX-a, ale niezbędnymi ze względu na pewne tradycje w ich stosowaniu. Takim znakiem jest np. ,,paragraph'', używany jako znak końca akapitu w niektórych edytorach tekstu pracujących w środowisku MS Windows. Do podobnego celu wykorzystywany bywa znak ,,currency''.
Pewne aplikacje windowsowe spodziewają się znaleźć pod kodami 32 i 160 odpowiednio odstęp (space
) i niełamliwy
odstęp (nbspace
). Są to znaki absolutnie bezużyteczne
z punktu widzenia TeX-a, ale nieusuwalne ze względu na windowsowe
tradycje.
Specyfikacja układu
Wersja 0.3 układu QX uwzględnia następujące ligatury:
f + f | ff |
f + i | fi |
f + l | fl |
f + k | fk |
ff + i | ffi |
ff + l | ffl |
hyphen + hyphen | endash |
endash + hyphen | emdash |
quoteleft + quoteleft | quotedblleft |
quoteright + quoteright | quotedblright |
comma + comma | quotedblbase |
exclam + quoteleft | exclamdown |
question + quoteleft | questiondown |
exclamdown + exclamdown | guillemotleft |
questiondown + questiondown | guillemotright |
Z dokładnością do ligatury ,,fk'' jest to ten sam zestaw ligatur
co w fontach
space + l | lslash |
space + L | Lslash |
percent + percent | perthousand |
less + less | guillemotleft |
greater + greater | guillemotright |
Pierwsze trzy z tych ligatur wydają się nieuzasadnione, dwie
pozostałe są nieadekwatne, ze względu na zachowanie
w układzie
W definicji układu
Na dwóch kolejnych stronach zamieszczamy porównanie układu
Tekst jest przedrukiem z Biuletynu GUST, nr 8/1997,
s. 28--30.
Ostatnia modyfikacja 12.11.1999