diff options
Diffstat (limited to 'Master/texmf-dist/doc/fonts/pl/README.POL')
-rw-r--r-- | Master/texmf-dist/doc/fonts/pl/README.POL | 344 |
1 files changed, 344 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fonts/pl/README.POL b/Master/texmf-dist/doc/fonts/pl/README.POL new file mode 100644 index 00000000000..417c294e843 --- /dev/null +++ b/Master/texmf-dist/doc/fonts/pl/README.POL @@ -0,0 +1,344 @@ +***************************************************************************** +* Kolekcja fontów PL (polskiego rozszerzenia fontów * +* Computer Modern) w formacie źródłowym METAFONT-a * +* (dobro wspólne -- public domain) * +***************************************************************************** + +Autorzy +======= +Bogusław Jackowski <B.Jackowski@gust.org.pl> +Marek Ryćko <M.Rycko@gust.org.pl> +konsultacje: Roman Tomaszewski + +------------- +OPIS PAKIETU: +------------- +Niniejsza dystrybucja METAFONT-owych plików źródłowych fontów PL +(wersja 1.09, 13 kwietnia 2001) jest częścią dystrybucji pakietu MeX +i WYJĄTKOWO jest rozpowszechniana jako odrębny pakiet. + +Powodem aktualizacji jest usunięcie błędu wykrytego (podczas pracy nad +fontami EC) przez Andreasa Schwaba i Joerga Knappena. Błąd polegał +na różnicach wysokości i korekt kursywy liter diakrytycznych w zależności +od użytej rozdzielczości. Ponieważ suma kontrolna plików TFM +zależy wyłącznie od szerokości znaków, błąd ukrywał się przez wiele lat. + +W wersji poprawionej znaki diakrytyczne są przetwarzane dwukrotnie +(patrz makro ,beginchar_twice' w pliku pl_dod.mf). Za pierwszym razem +wszystkie operacje rysowania (fill, draw, cull itp.) są neutralizowane, +w rezultacie otrzymujemy w tym przebiegu jedynie wymiary znaków +(mamy nadzieją, że niezależne od rozdzielczości ;-). W drugim przebiegą są +tworzone obrysy (glyphs) znaków. + +Poniższy fragment zaczerpnięto z dokumentacji mexinfo.pol zawartej +w pakiecie MeX + ftp://ftp.gust.org.pl/pub/TeX/language/polish/mex105.zip +lub archiwa CTAN, np. + ftp://ftp.dante.de/tex-archive/language/polish/mex105.zip + +Fonty PL (polskie rozszerzenie fontów CM) +========================================== + +Fonty PL przeznaczone są do składania polskich lub polsko-angielskich +tekstów przy użyciu formatów MeX i LaMeX. Obecnie mogą też być +wykorzystane do składu przy użyciu pakietu PLaTeX (autorstwa Mariusza Olko +i Marcina Wolińskiego), wspomagającego skład polskich dokumentów przy użyciu +formatu LaTeX2e: + ftp://ftp.gust.org.pl/pub/TeX/language/polish/platex-1.??.zip + lub ftp://ftp.dante.de/tex-archive/language/polish/platex-1.??.zip + +Autorzy starali się zachować ,,ducha CM-ów'' przy projektowaniu polskich +znaków diakrytycznych. Np. przekreślenie małej litery ,,ł'' zostało +nieco tylko powiększone w stosunku do przekreślenia fontów rodziny CM +(METAFONT-owy program ,,Cross for Polish l and L'' w pliku ACCENT.MF) +umieszczanego w składzie komendami TeX-owymi \l oraz \L, chociaż w +niektórych fontach autorzy chętnie widzieliby przekreślenie znacznie +wyraźniejsze. Podobnie podcięcia wstawiane automatycznie pomiędzy znakami +(implicit kerns) były dodawane raczej ostrożnie. Np. zdaniem autorów +podcięcie między polskim otwierającym cudzysłowem (,,) a literą ,,W'' +bądź ,,T'' mogłoby być znacznie większe, gdyby nie to, że w fontach CM +nie ma żadnego podcięcia między literą ,,A'' a cudzysłowem zamykającym +(''). + +Fonty PL, podobnie jak macierzyste fonty CM, projektowane były +pod kątem zastosowań profesjonalnych, tzn. urządzeń o większych +rozdzielczościach. Niemniej jednak sporo wysiłku włożono w prawidłową +dyskretyzację przy małych rozdzielczościach (dla potrzeb wydruków +testowych na drukarkach mozaikowych 9- i 24-igłowych). + + 1. Fonty PL stanowią rozszerzenie standardowego zestawu rodziny + Computer Modern (CM) o polskie znaki diakrytyczne i bazują na tych + samych plikach parametrycznych co fonty rodziny CM. Zmiany parametrów + odbiegające zbyt daleko od standardu zaproponowanego przez D. E. Knutha + mogą spowodować nieoczekiwane efekty (do błędu w trakcie obliczeń + włącznie). Przykładowo, założone zostało, że kursywa i grotesk + wykluczają się. + + Układ fontów PL charakteryzuje się tym, że znaki o kodach < 128 + są identyczne ze znakami rodziny CM, natomiast polskim znakom + diakrytycznym przypisane zostały kody > 127 (innych cech TeX-a 3.x + nie wykorzystuje się). Polskie znaki diakrytyczne mają kody zgodne + z układem ECM (Extended Computer Modern, Cork encoding), natomiast + cudzysłowy mają kody niestandardowe (w ECM cudzysłowy mają + kody < 127): + + Ą -- 129 ą -- 161 + Ć -- 130 ć -- 162 + Ę -- 134 ę -- 166 + Ł -- 138 ł -- 170 + Ń -- 139 ń -- 171 + Ó -- 211 ó -- 243 + Ś -- 145 ś -- 177 + Ź -- 153 ź -- 185 + Ż -- 155 ż -- 187 + + << (francuski cudzysłów otwierający) -- 174 + >> (francuski cudzysłów zamykający) -- 175 + ,, (polski cudzysłów otwierający) -- 255 + + Uwagi: + * Fonty matematyczne plmi, plmib oraz plex nie zawierają polskich + znaków diakrytycznych i nie różnią się od odpowiednich fontów + CM; przedrostki CM zostały zmienione na PL jedynie dla zachowania + jednorodności. + * Podobnie font pltex10 to po prostu font cmtex10 ze zmienioną dla + jednolitości nazwą; font cmtex10 odzwierciedla układ klawiatury + na komputerze używanym przez profesora Knutha (D. E. Knuth, + ,,Computer Modern Typefaces'', str. 568), tym samym nie powinien + raczej zawierać polskich znaków diakrytycznych. + * Fonty plsy zostały poszerzone (w stosunku do cmsy) o znaki + ,,większe-równe'' i ,,mniejsze-równe'' odpowiadające + polskim zwyczajom drukarskim (dolna kreska skośna zamiast + poziomej); na konieczność takiego rozszerzenia zwrócił + uwagę p. Włodzimierz J. Martin; majuskuły kaligraficzne tych + fontów (opisane w pliku calu.mf) nie zostały uzupełnione + o polskie znaki diakrytyczne. + + 2. Jedynymi znakami ,,polskimi'' dostępnymi poprzez ligatury są + cudzysłowy (,, << >>). Polskie znaki diakrytyczne są dostępne + albo bezpośrednio, albo za pomocą komendy realizowanej przez + ,,aktywny ciach'' (/a /c /e /l /n /o /s /x /z /A /C /E + /L /N /O /S /X /Z) zaprogramowanej w formatach MeX i LaMeX + (p. opis używania formatów MeX i LaMeX). Istnieją zasadnicze powody, + dla których autorzy nie wykorzystali do tego celu ligatur. + + 3. Ze względu na ograniczenie liczby różnych wysokości znaków w foncie + do 15 niezerowych, zrezygnowano z kuszącego wypełniania ,,górnej + połówki'' fontu. Ponadto w programach METAFONT-owych podjęte zostały + zabiegi mające na celu minimalizację liczby różnych wysokości. + Niestety, mimo to w niektórych przypadkach liczba różnych niezerowych + wysokości przekracza 15. W takiej sytuacji METAFONT automatycznie + zmienia niektóre spośród wysokości. Oznacza to, że w pewnych + (bardzo złośliwych i -- miejmy nadzieję -- niezwykle rzadkich) + przypadkach może się zdarzyć, że tekst czysto angielski złożony + fontami PL zostanie inaczej przełamany na strony niż tekst złożony + fontami CM. + + 4. Starano się unikać wprowadzania dodatkowych parametrów, co jednak + nie zawsze było możliwe. Szczegóły dotyczące możliwości zmiany + zachowania domyślnego opisane są w pliku pl_dod.mf. Przykłady użycia + opcjonalnych parametrów zmieniających zachowanie domyślne znaleźć + można w plikach źródłowych fontów plb10, plbx5, plbx6, plbx7, plbx8, + plcsc10, pldunh10, plfi10, plff10, plitt10, plr5, plr6, plr7, plr8, + plr9, plr12, plr17, plsl8, plsl9, plsl12, plssq8, plssqi8, pltcsc10, + plti7, plti8, plti12 oraz plvtt10. + + 5. Programy opisujące polskie znaki diakrytyczne zostały oparte na + odpowiednich programach rodziny CM. Opisy polskich znaków + diakrytycznych stanowią niezależne programy, co jest zgodne + z ogólną filozofią programów rodziny CM (można by np. zapamiętywać + mapy bitowe liter ,,A'', ,,C'', ,,a'', ,,c'', ..., itd., i te mapy + bitowe modyfikować; z takiego podejścia i mu podobnych zrezygnowano). + + Nieco trickowe rozwiązanie zastosowano w celu uniknięcia duplikowania + plików parametrycznych (plb10, plbx10, ..., itd.). Wykorzystano tu + METAFONT-ową zmienną ,,jobname'' do czytania odpowiednich plików + parametrycznych rodziny CM. Pliki te powinny znajdować się w kartotece + przeszukiwanej przez METAFONT-a w trakcie realizacji komendy ,,input''. + + 6. Program dla polskiego cudzysłowu otwierającego zaczerpnięty został + z programów rodziny CM. Natomiast kształt cudzysłowów francuskich + został zaprojektowany i zaprogramowany ,,od zera''. + + 7. Pierwszą i najważniejszą fazą pracy nad fontami PL było + zaprojektowanie i zaprogramowanie kształtów polskich znaków + diakrytycznych w sześciu podstawowych krojach: plr, plss, plbx, plssbx, + pltt oraz plti (stopnie pisma od 5 do 17 punktów). + + Tym etapem pracy opiekował się troskliwie p. Roman Tomaszewski, + wybitny polski typograf, członek zarządu Międzynarodowego + Stowarzyszenia Typograficznego ATypI i zarazem przewodniczący Polskiego + Oddziału ATypI. Autorzy są mu głęboko wdzięczni za życzliwe + wspieranie swą wiedzą i doświadczeniem prac projektowych nad + fontami PL. + + Pan Roman Tomaszewski zmarł w grudniu 1992 roku. + + 8. Akcenty nad minuskułami ,,ć'' ,,ń'' ,,ó'' ,,ś'' ,,ź'' są takie + same jak wstawiany TeX-ową komendą \' akcent ,,acute'', tyle że + w niektórych przypadkach są nieco przesunięte w poziomie. Natomiast + akcenty nad majuskułami ,,Ć'' ,,Ń'' ,,Ó'' ,,Ś'' ,,Ź'' są wprawdzie + konstruowane w oparciu o akcent ,,acute'', ale są nieco ,,spłaszczone'' + (w przypadku odmian szeryfowych jest to zwykły obrót, natomiast + w przypadku odmian bezszeryfowych -- obrót połączony z pewną + modyfikacją, ze względu na konieczność zachowania poziomego + położenia górnej i dolnej krawędzi akcentu oraz optycznej grubości + kreski akcentowej). Wyjątkowo w karykaturalnie smukłym foncie pldunh10 + akcent nad minuskułami i majuskułami jest pochylony tak samo. + + Powyższe zabiegi są zgodne z regułami sztuki typograficznej, powodują + natomiast, że akcenty kładzione za pomocą TeX-owej komendy \accent + mogą się istotnie różnić od akcentowanych majuskuł w fontach PL. + + 9. Akcent nad literami ,,ż'' oraz ,,Ż'' jest taki sam jak kropka nad + literą ,,i'', czyli inny niż akcent wstawiany przez TeX-a (za pomocą + komendy \.). W literze ,,ż'' jest także umieszczony na tej samej + wysokości co kropka nad ,,i'' (oczywiście nie w foncie kapitalikowym). + Dzięki temu w słowach takich jak ,,gwiżdże'' czy ,,niżej'' kropka + zachowuje tę samą wysokość. Niestety, w niektórych fontach rodziny + CM kropka nad ,,i'' jest stanowczo za mała (np. CMTT), co powoduje, + że wartość optyczna kropki nad ,,ż'' oraz ,,Ż'' jest też czasami + zbyt mała. Z powiększenia kropki zrezygnowano, uznając jej wielkość + za cechę fontów CM. + +10. Przekreślenie litery ,,Ł'' jest znacznie większe od przekreślenia + litery ,,ł'', a przekreślenie litery ,,ł'' jest z kolei większe od + przekreślenia w fontach rodziny CM (p. punkt 0 powyżej). + +11. ,,Ogonki'' pod literami ,,Ą'' ,,Ę'' ,,ą'' ,,ę'' budowane są za + pomocą stosunkowo skomplikowanego algorytmu, ale geometria + ogonka jest bardzo prosta: zewnętrzna i wewnętrzna krawędź to + pojedyncze segmenty krzywych B\'eziera. Ogonki takie -- jak + pokazuje doświadczenie -- są najzgrabniejsze. + + Opcjonalne parametry dodatkowe wpływające na kształt ogonków + opisane są w pliku pl_dod.mf. + +12. Polskie znaki diakrytyczne nie są przeznaczone do używania jako + znaki matematyczne, dlatego w programach opisujących te znaki + pominięta została komenda ,,math_adjust''. + +13. Podcięcia wstawiane automatycznie między znakami (implicit kerns) + są w zasadzie takie same dla polskich znaków diakrytycznych jak dla + odpowiednich liter alfabetu łacińskiego, z pewnymi wszakże wyjątkami + (p. pliki polan.mf, polkur.mf oraz polkap.mf); podobnie rzecz się ma + z korektą italikową wstawianą za polskimi znakami diakrytycznymi. + +14. Dla tych, którzy chcieliby wydrukować źródła METAFONT-owe w postaci + sformatowanej za pomocą programu MFT, dołączony jest odpowiedni + format o nazwie pl.mft. Format ten jest przygotowany do składania + z użyciem fontów rodziny CM; jeśli użytkownik zamienił już + wszystkie CM-y na fonty PL, musi odpowiednio zmienić nazwy fontów + w plikach pl.mft oraz mftmac.tex (plik mftmac.tex znaleźć można np. + w każdej dystrybucji TeX-a lub CTAN:/macros/generic/plain/base/). + +Aktualna dystrybucja składa się z: + + (a) 12 plików podstawowych: + fik_mik.mf, pl_cud.mf, pl_dl.mf, pl_dod.mf, pl_ml.mf, + pl_mlk.mf, pl_sym.mf, polan.mf, polkap.mf, polkur.mf, + polmat.mf, poltyt.mf; + + (b) 80 plików parametrycznych: + plb10.mf, plbsy10.mf, plbsy5.mf, plbsy7.mf, plbx10.mf, plbx12.mf, + plbx5.mf, plbx6.mf, plbx7.mf, plbx8.mf, plbx9.mf, plbxsl10.mf, + plbxti10.mf, plcsc10.mf, pldunh10.mf, plex10.mf, plff10.mf, + plfi10.mf, plfib8.mf, plinch.mf, plitt10.mf, plmi10.mf, + plmi12.mf, plmi5.mf, plmi6.mf, plmi7.mf, plmi8.mf, plmi9.mf, + plmib10.mf, plmib5.mf, plmib7.mf, plr10.mf, plr12.mf, plr17.mf, + plr5.mf, plr6.mf, plr7.mf, plr8.mf, plr9.mf, plsl10.mf, plsl12.mf, + plsl8.mf, plsl9.mf, plsltt10.mf, plss10.mf, plss12.mf, plss17.mf, + plss8.mf, plss9.mf, plssbi10.mf, plssbx10.mf, plssdc10.mf, + plssi10.mf, plssi12.mf, plssi17.mf, plssi8.mf, plssi9.mf, + plssq8.mf, plssqi8.mf, plsy10.mf, plsy5.mf, plsy6.mf, plsy7.mf, + plsy8.mf, plsy9.mf, pltcsc10.mf, pltex10.mf, pltex8.mf, pltex9.mf, + plti10.mf, plti12.mf, plti7.mf, plti8.mf, plti9.mf, pltt10.mf, + pltt12.mf, pltt8.mf, pltt9.mf, plu10.mf, plvtt10.mf; + + prawie wszystkie pliki parametryczne odwołują się do oryginalnych + plików źródłowych D. E. Knutha; wyjątkiem są jedynie plbsy5.mf, + plbsy7.mf, plmib5.mf oraz plmib7.mf, które odwołują się do + dodatkowych plików źródłowych fontów Computern Modern zawartych + w dystrybucji AMS; podczas generowania fontów PL wymagana jest + dostępność w systemie oryginalnych plików źródłowych CM i AMS; + + (c) 2 pliki dodatkowe: + * cmssbi10.mf -- dodany dla kompletności (pliku tego brak + w oryginalnym zestawie plików parametrycznych); + * dlr10.mf -- plik przykładowy, demonstruje sposób zmiany + jednostki podstawowej fontu (w tym wypadku plik parametryczny + definiuje font wielkości 10 dd) + +--------- +HISTORIA: +--------- + + 7 lutego 1992: wersja 1.00 +11 lutego 1992: wersja 1.01 + * brak zmian; nowy numer wersji wynikł ze zmian w formacie MeX + 1 Jun 1992: wersja 1.02 + * pl_dod.mf: + dwa błędne wiersze: + z_a:=(x_down+the_left_pos,.5penkind); % starting point + z_d:=(xpart(z_a)-.5penkind,y_right+.5penkind)+the_tip_pos; % ending point + zastąpiono następującymi: + z_a:=(x_down+the_left_pos,ypart(ogonek_pos)); % starting point + z_d:=(xpart(z_a)-.5penkind,y_right+ypart(ogonek_pos))+ + the_tip_pos; % ending point + zmiany komentarzy + * pl_mlk.mf: + przekreślenie w literze ł: + filldraw stroke z1e--z2e; %| stem + zamieniono na: + filldraw stroke z1e--z2'e; %| stem + * fik_mik.mf wczytuje cmbase.mf, aby uniknąć wielokrotnego wczytywania + bazy podczas przetwarzania pliku parametrycznego +18 grudnia 1992: wersja 1.03 + * fik_mik.mf: + dodano możliwość dowolnego przeskalowania; wartość |basic_unit#| + może być użyta do zmiany domyślnej jednostki podstawowej |pt#| + generowanego fontu (sugestia M. Łakomego; patrz przykładowy + plik dlr10.mf generujący font |10dd#|) + * kosmetyczne zmiany w plikach cmbx11.mf, cmr11.mf, cmti11.mf, + cmsl11.mf, cmssbi10.mf oraz polan.mf +14 kwietnia 1996: wersja 1.07$gamma$ -- nieoficjalna + (wersje od 1.04 do 1.06 nie były nigdy publikowane) + * usunięto przykry błąd wykryty przez Andreasa Schwaba i Joerga Knappena + podczas prac nad włączeniem kodu fontów PL do fontów EC: + błąd zaokrągleń powodował, że pliki TFM zależały od rozdzielczości + (podziękowania dla Andreasa i Joerga) + * poprawiono makro |put_dot| (pl_dod.mf) + * zdefiniowano |qvair| i |limit_dist| (używane jako zmienne) + * kosmetyczne zmiany kodu +13 kwietnia 2000: wersja 1.07 -- oficjalne udostępnienie (BachoTeX 2000) + * bez zmian kodu od wersji 1.07$\gamma$ + * usunięto z dystrybucji zbędne pliki cmr11.mf, cmti11.mf, cmsl11.mf + * aktualizacja dokumentacji i komentarzy w plikach źródłowych +13 kwietnia 2000: wersja 1.08 (data została zachowana celowo) + * pl_dod: + w definicji makra |beginchar_twice| (przed rozpoczęciem właściwego + rysowania znaku) dodano: + save mode_guard_; % dedicated to those who use Karl Berry's modes.mf + problemy z używaniem modes.mf zostały zgłoszone przez Włodka Macewicza + * zmiana ta NIE WPŁYNĘŁA na pliki metryczne, tzn. pliki generowane + z wersji 1.07 są identyczne; dołożymy wszelkich starań, żeby + zachować stabilność plików TFM, zgodnie z enuncjacją Donalda E. Knutha: + ,,I absolutely guarantee that the TFM files will never change again.'' + (DeK, plik CM85bug) + * z dystrybucji usunięty został font plex9 jako niezwiązany + z oryginalnym zestawem fontów Computer Modern; w razie potrzeby (?) + wystarczy przenazwować plik plex10.mf + * przeczyszczono komentarze +13 kwietnia 2001: wersja 1.09 + * pl_dod: + typ parametru redefiniowanych w |beginchar_twice| instrukcji |special| + i |numspecial| był niezgodny ze składnią (|primary| zamiast |expr|): + <special command> := + special <string expression> | numspecial <numeric expression> + +------ +EMAIL: +------ + +B.Jackowski@gust.org.pl lub M.Rycko@gust.org.pl + |