diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /info/tex-virtual-academy-pl/fonty |
Initial commit
Diffstat (limited to 'info/tex-virtual-academy-pl/fonty')
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/back.gif | bin | 0 -> 216 bytes | |||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/font-abc.html | 579 | ||||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/fonts_inst.html | 481 | ||||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/index.html | 289 | ||||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/nfss.html | 566 | ||||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/qx-info.html | 447 | ||||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/qx-table1.html | 280 | ||||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/qx-table2.html | 279 | ||||
-rw-r--r-- | info/tex-virtual-academy-pl/fonty/tpstyle.css | 7 |
9 files changed, 2928 insertions, 0 deletions
diff --git a/info/tex-virtual-academy-pl/fonty/back.gif b/info/tex-virtual-academy-pl/fonty/back.gif Binary files differnew file mode 100644 index 0000000000..a694ae1ec3 --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/back.gif diff --git a/info/tex-virtual-academy-pl/fonty/font-abc.html b/info/tex-virtual-academy-pl/fonty/font-abc.html new file mode 100644 index 0000000000..38f58b3a4d --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/font-abc.html @@ -0,0 +1,579 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> +<head> +<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> +<meta name="keywords" lang="en" content="Polish TeX Users Group, Polish TeX, computer fonts" > +<LINK REL=STYLESHEET TYPE="text/css" HREF="./tpstyle.css"> +<title> Fontowe ABC </title> +</head> +<body> + +<h1> Fontowe ABC </h1> +<P> +Co jakiś czas na liście dyskusyjnej GUST-u padają głosy świadczące +z jednej strony o dużym zainteresowaniu sprawami fontowymi, +a z drugiej strony -- o częstym niezrozumieniu podstawowych +spraw związanych z fontami. +</P> + +<!-- <p>Zainteresowanie fontami jest o tyle uzasadnione, że ostatnimi czasy +pojawia się na rynku coraz więcej fontów PostScript-owych, dajšcych się +wykorzystać do składania polskich tekstów – ot, choćby fonty +dystrybuowane przez firmę ThETA.</p> --> + +<p>Te aspekty skłoniły nas do podjęcia próby spisania fontowego +elementarza dla tych dzielnych adeptów fontologii, którzy nie boją się +pułapek, od których niestety aż się roi w świecie fontów. +(Dodatkowe informacje na temat wykorzystania fontów w LaTeX2e można +znaleźć w dokumentacji <a href="nfss.html">Fonty +w LaTex2e</a>).</p> + +<!-- Spis treści ....................................................... --> +<hr /> <a id="P0" name="P0"></a> +<ul> +<li><a href="#Fonty-TFM">Fonty „TeX-owe” czyli pliki TFM</a></li> +<li><a href="#Fonty-wlasciwe">Fonty „właściwe”</a></li> +<li><a href="#Fonty-CM">Fonty rodziny Computer Modern</a></li> +<li><a href="#Fonty-bitmapowe">Fonty bitmapowe</a></li> +<li><a href="#Fonty-PS">Fonty PostScript-owe czyli pliki AFM oraz PFB + (lub PFA)</a></li> +<li><a href="#Znaki">Reprezentacja znaków</a></li> +<li><a href="#Nazwy-kody">Nazwy i kody znaków</a></li> +<li><a href="#AFMTFM">Konwersja AFM -> TFM</a></li> +<li><a href="#AFMTFMp">Konwersja AFM -> TFM – poprawność nazw + znaków</a></li> +<li><a href="#AFMTFMk">Konwersja AFM -> TFM – kerny + i ligatury</a></li> +<li><a href="#Pliki-cnf">Pliki konfiguracyjne sterownika + <code>DVIPS</code></a></li> +<li><a href="#Latanie">Łatanie fontów – niepoprawny font</a></li> +<li><a href="#BrakAFM">Łatanie fontów – brak plików AFM</a></li> +<li><a href="#Podsumowanie">Podsumowanie</a></li> +</ul> + +<hr /> +<!-- ................................................................. --> +<a id="Fonty-TFM" name="Fonty-TFM"></a> + +<h2><a id="Fonty-TFM" name="Fonty-TFM">Fonty „TeX-owe” czyli pliki +TFM</a></h2> + +<p>TeX-owi jest absolutnie obojętne, jakich fontów używamy: czy to są +mapy bitowe, fonty PostScript-owe w formacie Type 1, czy też +może egzotyczne fonty „własnego chowu” – nie ma to znaczenia. +Jedyne, czego potrzebuje TeX, to informacja metryczna, czyli pliki +<code>TFM</code> (TeX Font Metric). Pliki metryczne, jak sama nazwa +wskazuje, zawierają w pierwszym rzędzie informację +o rozmiarach znaków, ale także informację o wielkości kernów +(podcięć) dla par znaków, informację o wielkości korekty kursywy +(<em>italic correction</em> dla poszczególnych znaków oraz – choć +trudno to zakwalifikować jako informację metryczną – informację +o ligaturach, tzn. informację, które pary znaków mają być +zastępowane automatycznie innym znakiem, np. dwa umieszczone obok +siebie znaki <code>--</code> zamienione zostaną przez TeX-a przez +pojedynczy znak „–” zwany pauzą półfiretową (<em>endash</em>).</p> + +<p>Krótko mówiąc żeby w ogóle „prze-TeX-ować” dokument potrzebne +są pliki <code>TFM</code>.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> +<a id="Fonty-wlasciwe" name="Fonty-wlasciwe"></a> +<h2><a id="Fonty-wlasciwe" name="Fonty-wlasciwe">Fonty +„właściwe”</a></h2> + +<p>Dopiero sterowniki zamieniając złożone dokumenty, czyli pliki +<code>DVI</code>, na postać widoczną już to na papierze, już to na +ekranie, już to na jakimś innym nośniku potrzebują tych „właściwych +fontów”.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> +<a id="Fonty-CM" name="Fonty-CM"></a> +<h2><a id="Fonty-CM" name="Fonty-CM">Fonty rodziny Computer +Modern</a></h2> + +<p>Zgodnie z konwencją przyjętą przez Donalda E. Knutha nazwy +fontów rodziny Computer Modern zawierają formalny rozmiar fontu +w punktach, np. <code>cmr10</code> (font 10-punktowy), +<code>cmbx7</code> (font 7-punktowy), itp. Należy tu podkreślić, że +font <code>cmr12</code> nie jest równoważny fontowi zdefiniowanemu jako +<code>cmr10</code> <code>at</code> <code>12pt</code> – +chociaż oba fonty mają wielkość 12 punktów, to jednak proporcje +znaków w obu fontach są inne. Tę samą cechę dziedziczą oczywiście +fonty wywodzące się z rodziny Computer Modern (Computer Concrete, +<code>EC</code>, <code>PL</code>), a także fonty rodziny +<code>Euler</code>, fonty cyryliczne, i inne fonty tworzone +w duchu konwencji rodziny Computer Modern.</p> + +<p>Zmiany proporcji wraz ze zmianą stopnia pisma są jak najbardziej +uzasadnione, małe fonty powinny dla lepszej czytelności mieć nieco +większe i szersze oczka minuskuł w stosunku do majuskuł. +Niemniej jednak wydaje się, że Donald E. Knuth nieco +przesadził z liczbą odmian fontów zmieniając co jeden punkt +proporcje znaków.</p> + +<p>W praktyce wystarczyłyby nie więcej niż cztery zakresy: +pierwszy dla fontów mniejszych niż 8-punktowe, drugi dla fontów od +8 do 12 punktów, trzeci dla fontów od 12 do – +powiedzmy – 24 punktów i wreszcie czwarty dla fontów +tzw. nagłówkowych. Ostatni z wymienionych zakresów nie +pojawia się w fontach +<code>Computer</code> <code>Modern</code>. Font calowy +<code>cminch</code>, przeznaczony do nagłówków, jest w istocie +przeskalowanym proporcjonalnie fontem <code>cmssbx10</code>. Innymi +słowy dokładnie ten sam efekt uzyskałoby się za pomocą instrukcji +<code>\font</code> <code>\f</code> +<code>cminch</code> <code>\f</code> i za pomocą instrukcji +<code>\font</code> <code>\f</code> +<code>cmssbx10</code> <code>at</code> <code>1.44in</code> <code> +\f</code>. Jedyna różnica polega na tym, że font <code>cminch</code> +jest nieco „oszczędniejszy” – zawiera tylko duże litery +i cyfry.</p> + +<p>Sporo zamieszania wywołały także <code>plain</code>-owe instrukcje +<code>\magstephalf</code> i <code>\magstep</code> sugerujące, że +jedyne „legalne” powiększenia fontów to 109,5%, 120%, 144%, 172,8%, +207,4% lub co najwyżej 248,8% (p. <em>The TeX book</em>, +str. 17). Mimo iż nie jest to nigdzie <em>expressis verbis</em> +powiedziane, to jednak sporo nieporozumień narosło na tym tle. Trudno +się temu dziwić, skoro prawie wszystkie pakiety zawierające fonty +TeX-owe w postaci map bitowych (p. niżej) stosowały się do +tej reguły, tzn. mapy bitowe generowane były tylko dla +wymienionych wyżej powiększeń. Chcąc w dokumentach TeX-owych +w sposób jednolity korzystać z fontów tradycyjnych, czyli +bitmapowych, i z fontów PostScript-owych, nie należy +przejmować się zanadto rozpowszechnionym obyczajem mającym swe korzenie +w czasach, gdy komputery były wolniejsze i wygenerowanie +fontu „od ręki” było zbyt kosztowne. Rzadko używana instrukcja +postaci</p> + +<pre> + \font... at ... +</pre> + +<p>jest w tym kontekście godna polecenia.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> +<a id="Fonty-bitmapowe" name="Fonty-bitmapowe"></a> +<h2><a id="Fonty-bitmapowe" name="Fonty-bitmapowe">Fonty +bitmapowe</a></h2> + +<p>W tradycyjnej konfiguracji systemu TeX podstawowymi fontami są +mapy bitowe (pliki <code>GF</code> – <em>generic font</em>) generowane +przez program METAFONT. Najczęściej używanym formatem jest jednak nie +format <code>GF</code>, a nieco oszczędniejszy +format <code>PK</code> (<em>packed</em>). Do zamiany służy program +<code>GFTOPK</code>, z reguły wywoływany automatycznie +w procesie generowania fontów.</p> + +<p>Fonty bitmapowe generowane są dla <em>konkretnej wielkości pisma +i konkretnego urządzenia</em>, tzn. zawierają pewne +informacje pozwalające na danym urządzeniu – ekranie czy drukarce – +uzyskać optymalny wygląd znaków. Stąd np. odrębne fonty dla +drukarek laserowych i drukarek atramentowych o tej samej +rozdzielczości 300dpi.</p> + +<p>TeX – jak już wspomnieliśmy – pozwala skalować całość dokumentu +lub poszczególne fonty:</p> + +<pre> +\magnification2000 +\font\A plr10 scaled \magstep3 +\font\B plr10 at 28.5pt +</pre> + +<p>gdzie <code>plr10</code> oznacza nazwę fizycznie posiadanego na +dysku pliku <code>plr10.tfm</code>. TeX przeskaluje font +<code>plr10</code> tak, jak sobie tego życzymy, a ściślej – +przeskaluje informację metryczną związaną z fontem. Żeby móc +zobaczyć, jak wyglądają znaki przeskalowanego fontu, należy skorzystać +z METAFONT-a, który oczywiście potrafi generować fonty dowolnie +przeskalowane.</p> + +<p>Fonty <code>PK</code> zwykle przechowywane są w katalogach +o nazwach zawierających liczbę wynikającą z przemnożonenia +rozdzielczości przez przeskalowanie, np. fonty +o rozdzielczości 300dpi ( <em>dots per inch</em>) powiększone +o 20% (<code>\magstep1</code>) znajdą się w katalogu +o nazwie <code>360dpi</code>, <code>dpi360</code> lub jakimś +innym, podobnie nazwanym. Jeśli system operacyjny zezwala na nadawanie +plikom długich nazw, to przeskalowanie może być wpisane w nazwę +pliku, np. <code>.../fonts/pk/laserjet/pl/plr10.360pk</code>.</p> + +<p>Standardowe sterowniki przetwarzające pliki <code>DVI</code> czy to +na postać wyświetlaną na ekranie, czy też drukowaną, używają fontów +<code>PK</code> i posiadają mechanizm przeszukiwania odpowiedniej +struktury katalogów lub interpretacji nazw fontów przeskalowanych. +Sterowniki te pozwalają zwykle na bardzo szybkie wyświetlenie +składanego tekstu. Współczesne sterowniki posiadają także możliwość +współpracy z METAFONT-em – potrafią przekazać informację +o brakujących fontach i uruchomić METAFONT-a, wstrzymując +pracę do czasu zakończenia procesu generowania brakujących fontów. +Dzięki temu nie ma obecnie potrzeby trzymania na dysku olbrzymich +bibliotek fontów w formacie <code>PK</code>, wystarczą pliki +źródłowe fontów i odpowiednio skonfigurowane łącze +sterownik-METAFONT (program lub skrypt) by zautomatyzować proces +generowania fontów. Dla bardzo rozpowszechnionych sterowników +z pakietu <code>emTeX</code> będzie to program <code>MFjob</code> +(<code>MS-DOS</code>, <code>OS/2</code>), zaś dla systemów opartych na +<code>web2c</code> – skrypt <code>mktexpk</code> (różne wersje +<code>Unix</code>, <code>Windows</code> i <code>Amiga</code>).</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> + <a id="Fonty-PS" name="Fonty-PS"></a> + +<h2>Fonty PostScript-owe czyli pliki AFM oraz PFB (lub PFA)</h2> + +<p>Jeżeli chodzi o PostScript, to ten „właściwy font” – mowa tu +o fontach zapisanych w formacie Adobe Type 1 – zawarty +jest w pliku z rozszerzeniem <code>.pfb</code> +(<em>PostScript Font Binary</em>) lub <code>.pfa</code> ( +<em>PostScript Font ASCII</em>). Natomiast o plikach +<code>TFM</code> w świecie PostScript-owym mało kto słyszał. Na +szczęście dobrzy ludzie z firmy Adobe wymyślili coś podobnego do +tego, co wymyślił Donald E. Knuth, mianowicie pliki metryczne AFM +(<em>Adobe Font Metric</em>). Różnią się one trochę od plików +<code>TFM</code> (np. pliki <code>AFM</code> są plikami +tekstowymi), ale mimo różnic jest możliwe by na podstawie pliku +<code>AFM</code> utworzyć plik <code>TFM</code>.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> +<a id="Znaki" name="Znaki"></a> + +<h2>Reprezentacja znaków</h2> + +<p>Zanim pójdziemy dalej trzeba wyjaśnić jedną rzecz, mianowicie +w jaki sposób są reprezentowane znaki. Jeżeli chodzi o plik +<code>DVI</code> to odpowiedź jest trywialna: jako liczby +z zakresu <code>0</code>--<code>255</code>. Przy tworzeniu pliku +PostScript-owego za pomocą sterownika sytuacja <em>nie ulega</em> +zmianie, to znaczy w pliku PostScript-owym znaki też są +reprezentowane w zasadzie jako liczby z zakresu +<code>0</code>--<code>255</code>, czasem w reprezentacji ASCII, +a czasem w reprezentacji ósemkowej. Natomiast we „właściwym +foncie” PostScript-owym, podobnie zresztą jak w foncie +METAFONT-owym, jest inaczej: znaki są zasadniczo reprezentowane za +pomocą nazw w rodzaju „period”, „periodcentered”, „lslash”, +„aogonek”, itp.</p> + +<p>Formalnie rzecz biorąc font PostScript-owy jest programem, +a nazwy znaków są nazwami podprogramów opisujących kształt znaków +za pomocą – znów podobnie jak w programach METAFONT-owych – +krzywych trzeciego stopnia, zwanych krzywymi Béziera. Dodatkowo +podprogramy te opisują niektóre szczegóły procesu zamiany obwiedni na +mapy bitowe (tzw. <em>hinty</em> czyli podpowiedzi), bo przecież +ostatecznie znak zostanie wyświetlony na ekranie, wydrukowany na +drukarce lub naświetlony na diapozytywie, czyli musi zostać zamieniony +na postać dyskretną.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> +<a id="Nazwy-i-kody" name="Nazwy-i-kody"></a> + +<h2>Nazwy i kody znaków</h2> + +<p>Skąd zatem PostScript trafiając na jakąś liczbę „wie”, że ma użyć +procedury o nazwie, powiedzmy, „aogonek”?</p> + +<p>Aaa, właśnie! Tu jest pies pogrzebany. We „właściwym foncie” +PostScript-owym jest zawarta dodatkowa informacja, mianowicie tabela +par (liczba, nazwa) przyporządkowująca liczbom z zakresu +<code>0</code>--<code>255</code> nazwy podprogramów opisujących znaki. +Tablica ta (czasem zwana wektorem) nosi nazwę „Encoding”, co jest +może mało istotne, natomiast istotne jest to, że tablicę tę można +„w locie” zmienić. Z tej możliwości korzysta m.in. +sterownik <code>DVIPS</code> (p. niżej).</p> + +<!-- ............................................................... --> +<a id="AFMTFM" name="AFMTFM"></a> + +<h2>Konwersja AFM -> TFM</h2> + +<p>W pliku AFM znajduje się również informacja +o przyporządkowaniu liczba-nazwa, (w zasadzie można zakładać, +że jest to to samo przyporządkowanie, co w pliku +<code>PFB</code>/<code>PFA</code>). Na ogół nie jest to +przyporządkowanie, o które by nam chodziło. Ale nie ma biedy – +<code>DVIPS</code>-owi można podać <em>dowolne</em> przyporządkowanie, +które zostanie użyte w tworzonym przezeń pliku +PostScript-owym.</p> + +<p>Konwertery <code>AFM->TFM</code> na podstawie nazw generują +stosowne przyporządkowanie, lub nawet wiele przyporządkowań, a dla +każdego z takich przyporządkowań tworzony jest odpowiadający mu +plik <code>TFM</code>.</p> + +<p>Najpowszechniej używanym konwerterem jest program +<code>AFM2TFM</code>, należący do standardowej dystrybucji sterownika +<code>DVIPS</code>. Konwerter o nazwie <a +href="ftp://ftp.gust.org.pl/TeX/fonts/utilities/t1install/toil/">TOIL</a>, +bazuje na programach <code>AWK</code> oraz METAFONT Warto też wspomnieć +o pakiecie <code>VFINST</code>, oferującym liczne możliwości, +bazującym na fontach wirtualnych.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> +<a id="AFMTFMp" name="AFMTFMp"></a> + +<h2>Konwersja AFM -> TFM – poprawność nazw znaków</h2> + +<p>Aby konwertery <code>AFM->TFM</code> mogły działać jak należy, +nazwy podprogramów muszą być zgodne z ich treścią. Tak niestety +nie zawsze jest, np. pod nazwą „Sterling” zamiast opisu znaku +funta można znaleźć opis polskiego „Ł” czyli „Lslash”. Pomysłów na +cudaczne nazewnictwo jest mniej więcej tyle, ile tzw. standardów +kodowania znaków, czyli <em>infinity</em>.</p> + +<p>Z niepoprawnymi nazwami można sobie poradzić. Co nam zależy, +przecież „onesuperior” brzmi równie ładnie jak „aogonek”, +nieprawdaż? Problem jedynie w tym, że z góry nie wiadomo, że +producent uznał „onesuperior” za odpowiednią nazwę dla polskiej +litery „ą”. +Jakiś +szaleniec może się pogodzić z propozycją Adobe i użyć dla +podprogramu opisującego „ą” nazwy „aogonek”…</p> + +<p>Jakby nie dość było problemów, oprócz nazewnictwa ewidentnie +niepoprawnego możemy się zetknąć z obocznością! Otóż niektórzy +producenci dla określenia znaków „ż” i „Ż” używają nazw +„zdot” i „Zdot”, a niektórzy „zdotaccent” +i „Zdotaccent”. Nie znalazłem jednoznacznego stanowiska firmy +Adobe w tej sprawie, ale na ogół obowiązuje zasada „sklejania” +nazw: „a” + „grave” = „agrave”; skoro więc istnieje znak +„dotaccent” (nazwa używana przez Adobe), to „ż” należy rozumieć +jako „z” + „dotaccent” czyli „zdotaccent”. Innymi słowy zalecać +by należało używanie nazw „zdotaccent” i „Zdotaccent”, ale być +może konwertery <code>AFM->TFM</code> powinny być uwrażliwione na tę +oboczność.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +<!-- ................................................................. --> +<a id="AFMTFMk" name="AFMTFMk"></a> + +<h2>Konwersja AFM -> TFM – kerny i ligatury</h2> + +<p>Plik <code>TFM</code> zawiera jeszcze informację o parach +kernowych i ligaturach. Pary kernowe, uwzględniane „jak leci” +przez większość konwerterów <code>AFM->TFM</code>, na ogół są +umieszczane jak należy w plikach <code>AFM</code>, chociaż czasami +można trafić na felerne pliki <code>AFM</code> bez par kernowych. +Obecność par kernowych poznajemy to po występowaniu wierszy +zaczynających się od słowa kluczowego „KPX”. Warto mieć na uwadze, że +bywają pliki <code>AFM</code> posiadające tylko część par kernowych – +np. znaki diakrytyczne czasami nie są uwzględniane – dobrze jest +sprawdzić plik <code>AFM</code> pod tym kątem.</p> + +<p>Z ligaturami jest znacznie gorzej – można je bardzo rzadko +uświadczyć, mimo iż teoretycznie format <code>AFM</code> pozwala na +definiowanie ligatur, np. poniższy przykładowy wiersz pliku +<code>AFM</code>:</p> + +<pre> + C 45; WX 329; N hyphen; B 17 188 313 303; L hyphen endash; +</pre> + +<p>zgodnie ze specyfikacją Adobe ustala, że znak o kodzie +<code>45</code> ma szerokość <code>329</code> jednostek (jednostka = +1/1000em), nosi nazwę „hyphen”, że naroża prostokąta ograniczającego +obrys znaku mają współrzędne wynoszące w tych samych jednostkach +(17, 188) oraz (313, 303), i wreszcie że dwa znaki „hyphen” mają +być zamieniane na znak o nazwie „endash”, czyli innymi słowy +znak o nazwie „endash” jest ligaturą dwóch znaków o nazwie +„hyphen”.</p> + +<p>W związku z powszechnym brakiem informacji +o ligaturach w plikach <code>AFM</code>, konwertery +<code>AFM->TFM</code> muszą albo się domyślić, jakie by tu ligatury +można wstawić, albo – co chyba jest lepszym rozwiązaniem – zostać +poinformowane o prawidłowych dla danego fontu (grupy fontów) +ligaturach.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> +<!-- ................................................................. --> +<a id="Pliki-cnf" name="Pliki-cnf"></a> + +<h2>Pliki konfiguracyjne sterownika <code>DVIPS</code></h2> + +<p>Popularny sterownik <code>DVIPS</code>, autorstwa Tomasa Rokickiego, +zamieniający pliki <code>DVI</code> na pliki PostScript-owe musi +wiedzieć – podobnie jak każdy sterownik – gdzie znajdują się fonty +TeX-owe i PostScript-owe. Informację tę zawierają pliki +<code>config.ps</code> i <code>psfonts.map</code>, poszukiwane +w kartotekach wskazywanych przez zmienną systemową +<code>TEXCONFIG</code> (we współczesnych instalacjach zmienna ta jest +już zwykle zadeklarowana w pliku konfiguracyjnym +<code>texmf.cnf</code>).</p> + +<p>Plik <code>config.ps</code> zawiera informacje o parametrach +pracy programu. +<!-- plików <code>TFM</code>, plików <code>PK</code>, fontów wirtualnych, +oraz fontów PostScript-owych. --> +Natomiast plik <code>psfonts.map</code> zawiera informacje związane +wyłącznie z dostępnymi w danej instalacji fontami +PostScript-owymi. W pliku <code>psfonts.map</code> informacje +o poszczególnych fontach umieszczane są w jednym wierszu (co +czasem może być kłopotliwe). Typowy wiersz wygląda następująco:</p> + +<pre> +ec-qplr TeXGyrePagella-Regular "encqec ReEncodeFont" <q-ec.enc <qplr.pfb +</pre> + +<p>Pierwsza pozycja określa nazwę TeX-ową fontu, druga – wewnętrzną +nazwę PostScript-ową fontu (robi z niej użytek interpreter +PostScript-u), następnie pojawia się informacja o dodatkowych +zabiegach, jakim ma być poddany font (może to być poziome +przeskalowanie fontu, pochylenie lub zmiana kodowania – w podanym +przykładzie chodzi o zmianę kodowania), a na końcu pojawiają +się nazwy plików, które mają zostać dołączone do pliku wynikowego – +w tym wypadku jest to plik kodowania <code>q-ec.enc</code> oraz +font <code>qplr.pfb</code>.</p> + +<p>Podanie nazwy pliku fontowego nie jest konieczne – w takim +wypadku <code>DVIPS</code> założy, że chodzi o font wbudowany +w urządzenie. Gorąco odradzamy korzystanie z tej możliwości +– opłakane skutki korzystania z fontów wbudowanych można co jakiś +czas oglądać w materiałach nawet renomowanych firm: a to +zamiast polskich znaków występują „krzaczki”, a to litery +zachodzą na siebie, a to skład się zupełnie rozjeżdża…</p> + +<p>Plik kodowania zawiera tablicę 256 nazw znaków, określającą omawiane +wyżej przyporządkowanie kod-nazwa. Jest to w istocie fragment kodu +PostScript-owego postaci:</p> + +<pre> + /encqec[ + /grave + /acute + /circumflex + ... + /thorn + /germandbls + ] def +</pre> + +<p>O tym, jaki kod otrzymuje dany znak, decyduje kolejność +wystąpienia: w tym przypadku na pozycji zerowej (w języku +PostScript liczenie zawsze odbywa się od zera) występuje znak +o nazwie <code>grave</code> (znak „ciach” <code>/</code> +w notacji PostScript-owej oznacza mniej więcej to samo co znak +„w-tył-ciach” <code>\</code> w notacji TeX-owej),znak +<code>acute</code> otrzymuje kod 1, znak <code>circumflex</code> – +kod 2, …, znak <code>thorn</code> – kod 254, +i wreszcie znak <code>germandbls</code> – kod 255. +Wystąpienie <code>.notdef</code> oznacza, że +w foncie nie ma znaku na pozycji o danym kodzie.</p> + +<p>Warto mieć świadomość, że <code>DVIPS</code> włącza wszelkie pliki +prawie ich nie analizując, jedyny zabieg przezeń wykonywany to zamiana +postaci binarnej fontu Type 1 (<code>PFB</code>) na postać ASCII +(<code>PFA</code>). Jeżeli font jest już w postaci ASCII, to +włączany jest do dokumentu „jak leci”, bez żadnej ingerencji ze +strony sterownika. Oznacza to, że używając <code>DVIPS</code>-a możemy +korzystać ze wszystkich możliwych fontów PostScript-owych, nie tylko +najbardziej popularnych fontów Type 1, ale w szczególności +także fontów TrueType, które dla interpretera PostScript-u są po prostu +fontami Type 42 – wystarczy mieć plik <code>TFM</code> +i font Type 42 w postaci ASCII.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> +<!-- ................................................................. --> +<a id="Latanie" name="Latanie"></a> + +<h2>Łatanie fontów – niepoprawny font</h2> + +<p>Używając różnych wymyślnych narzędzi (np. <a +href="ftp://ftp.gust.org.pl/TeX/fonts/utilities/t1utils/">T1UTIL</a> +Lee Hetheringtona) można się zorientować, jakim znakom zostały +przypisane jakie nazwy i w razie czego je poprawić, można też +uzupełniać kerny, itp., ale to jest żmudne i przykre, bo +niepotrzebne zajęcie.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> +<!-- ................................................................. --> +<a id="BrakAFM" name="BrakAFM"></a> + +<h2>Łatanie fontów – brak plików AFM</h2> + +<p>Czasem fonty PostScript-owe są dystrubuowane z plikami +<code>PFM</code> (<em>Printer Font Metric</em>) zamiast z plikami +AFM.</p> + +<p>Brak plików <code>AFM</code> <em>praktycznie przekreśla</em> +możliwość użycia fontu PostScript-owego w TeX-u, bowiem pliki +<code>PFM</code> zawierają znacznie uboższą informację niż pliki AFM, +w szczególności <em>nie zawierają</em> nazw znaków, czyli nie +określają żadnej tablicy kodowania ( <em>encoding vector</em>, +p. wyżej). Można zakładać, że chodzi o takie samo +przyporządkowanie, jakie jest wpisane w pliku +<code>PFB</code>/<code>PFA</code>, chociaż w ogólności tak być nie +musi. Ponadto w pliku <code>PFM</code> znajdują się dane na temat +par kernowych jedynie dla co najwyżej 256 znaków, a font +PostScript-owy może ich zawierać nacznie więcej.</p> + +<p>Jeśli jednak szczęście nam dopisze, to z plików +<code>PFM</code> oraz <code>PFB</code> (bądź <code>PFA</code>) możemy +odtworzyć informację niezbędną do utworzenia pliku <code>AFM</code> – +można spróbować użyć pakietu <a +href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/tools/pf2afm.zip"> +pf2afm</a>, który dostępny jest w archiwum GUST-u.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> +<!-- ................................................................. --> +<a id="Podsumowanie" name="Podsumowanie"></a> + +<h2>Podsumowanie</h2> + +<p>Warto pamiętać, że font nie tylko musi ładnie w druku wyglądać, +ale i jego dość skomplikowana „wewnętrzna” struktura musi być +zrobiona porządnie.</p> + +<p>Jednym z najbardziej dających się we znaki problemów jest +problem układu znaków w foncie. Staranne przemyślenie tego +problemu <em>musi</em> prowadzić do wniosku, że firma Adobe już dawno +temu znalazła <em>wystarczające</em> w większości przypadków +rozwiązanie problemu konfigurowalności układu znaków w foncie. To +bardzo mocny argument na rzecz korzystania z fontów +PostScript-owych w formacie Type 1.</p> + +<p>Wprawdzie detale związane z instalowaniem fontów mogą się +wydawać skomplikowane, ale taka jest natura rzeczy. A do czego +prowadzi próba ukrycia tej natury przed użytkownikiem, wielu z nas +boleśnie odczuło w przypadku korzystania fontów TrueType +w systemie Windows. Wprawdzie instaluje się je bardzo prosto (albo +i – nie wiedzieć czemu – nie instaluje), ale praktycznie nie ma +<em>żadnej</em> możliwości rekonfiguracji. Ktoś, kto przenosił fonty +TrueType z jednej wersji systemu Windows do innej, wie o czym +mowa – a to font się w ogóle nie daje zainstalować, +a to inne znaki się pojawiają, niż byśmy chcieli, a to nasza +ulubiona aplikacja albo tego fontu nie widzi, albo się na nim +wywraca…</p> + +<p>Mając to na względzie uważamy, że warto poświęcić nieco czasu +i wysiłku na zrozumienie podstaw konfigurowania fontów, zwłaszcza +fontów PostScript-owych w formacie Adobe Type 1 – to +naprawdę w pewnym momencie staje się proste, a tym samym +oczywiście niezwykle użyteczne.</p> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis treści</A></P> + +Bogusław Jackowski i Staszek Wawrykiewicz + +<p><i>Powyższy tekst jest zmodyfikowaną wersją artykułu +z Biuletynu GUST, nr 8/1997, s. 7–12.</i><br /> + <i>Ostatnie zmiany 5.05.2014</i></p> +</P> +</body> +</html> + diff --git a/info/tex-virtual-academy-pl/fonty/fonts_inst.html b/info/tex-virtual-academy-pl/fonty/fonts_inst.html new file mode 100644 index 0000000000..5c1119c037 --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/fonts_inst.html @@ -0,0 +1,481 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> +<head> + <meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> + <meta name="keywords" lang="en" content="Polish TeX Users Group, Polish TeX, computer fonts, + MikTeX, fpTeX, teTeX, font installation" > + <LINK REL=STYLESHEET TYPE="text/css" HREF="./tpstyle.css"> + <title>Instalowanie fontów Type 1/TrueType w systemie TeX </title> +</head> + +<!-- zmiany i uzupełnienia: StaW 05.05.2014 --> + +<body> +<html> +<h1>Instalowanie fontów Type 1/TrueType</h1> + +<h3> +UWAGA: poniższy artykuł jest mocno ''techniczny'', wyjaśniając nieco, co +się dzieje za kulisami. Tym samym może okazać się przydatny dla nietypowych +sytuacji, gdy instalujemy "ręcznie" własne, lub niedostępne w dystrybucji fonty. +Obecnie w dystrybucji TeX Live +cały proces instalacji fontów został zautomatyzowany: po instalacji pakietu +fontów za pomocą programu TeX Live Manager aktualizowane są odpowiednie +pliki konfiguracyjne i fonty są dostępne dla różnych wersji-silników TeX-a. +</h3> + +<!-- Spis treści ....................................................... --> +<hr> +<A NAME=P0> <ul> + <li><A HREF=#fontyt1> Instalowanie fontów Type 1</A></li> + <ul> + <li><A HREF=#summa> Omówienie</A></li> + <li><A HREF=#textfm> TeX</A></li> + <li><A HREF=#dvips> Dvips</A></li> + <li><A HREF=#latex> LaTeX</A></li> + <li><A HREF=#pdftex> pdfTeX/pdfLaTeX</A></li> + </ul> + <li><A HREF=#fontyttf> Instalowanie fontów True Type</A></li> + <ul> + <li><A HREF=#ttftld> TeX/LaTeX/Dvips</A></li> + <li><A HREF=#pdftexttf> pdfTeX/pdfLaTeX</A></li> + </ul> +</ul> + + +<hr> +<A NAME="fontyt1"> +<h2>Instalowanie fontów Type 1</h2> +<p> + Podczas składania tekstu TeX korzysta wyłącznie z plików + metrycznych. Pliki takie mają rozszerzenie <code>.tfm</code>. Pliki + metryczne nie zawierają informacji o kształtach znaków, te są + zdefiniowane w innych plikach. Aby mieć możliwość wydrukowania + złożonego dokumentu, korzystującego z fontów wektorowych (skalowalnych, + np. Type 1) należy plik <code>dvi</code> zamienić na plik + w formacie PostScript. W każdej dystrybucji + TeX-a znajduje się program <code>dvips</code> wykonujący taką zamianę. + Program ten korzysta z plików z rozszerzeniem <code>.pfb</code>, + zawierających definicje kształtu znaków; może także korzystać z innych, + pomocniczych plików. +</p> +<p> + Zainstalowanie fontów Type 1 w systemie TeX polega na + umieszczeniu kilku plików w odpowiednich miejscach. Poniżej + opisano cały proces, biorąc za przykład instalację pakietu fontów + <A href="./index.html#Antyktor"> Antykwa Toruńska</A>. +</p> +<A NAME=summa> +<h3>Omówienie</h3> +<p> + Ponieważ cały proces instalacji fontów Type1 może się wydać nieco + skomplikowany (szczególnie dla początkujących), wymienimy tu pokrótce + poszczególne kroki. Dalsza część zawiera informacje techniczne, które mogą + zainteresować bardziej zaawansowanych użytkowników.</p> + +Pakiet fontowy zawiera zwykle kilka rodzajów plików: +<ul> + <li>pliki metryczne <code>.tfm</code>, z których korzysta TeX. + W strukturze katalogów zgodnej z TDS (<em>TeX Directory Structure</em>) + instalujemy je w ramach katalogu <code>~/texmf/fonts/tfm/</code>. + Szczegóły (np. użytą tu interpretację znaku <code>~</code>) patrz + część dot. samego <A HREF=#textfm>TeX-a</A>. + + <li>pliki fontowe <code>.pfb</code>, z których korzysta + <code>dvips</code>, instalujemy w ramach katalogu + <code>~/texmf/fonts/type1/</code>. + <li>pliki przekodowania <code>.enc</code>, oraz + <li>pliki map fontowych <code>.map</code>, z których także korzysta + sterownik <code>dvips</code>, instalujemy w ramach katalogu + <code>~/texmf/dvips/</code>. Dla Antykwy Toruńskiej odpowiedni podkatalog + może mieć nazwę <code>antt/</code>.<br> + <b>UWAGA:</b> W 2004 postanowiono zmienić wytyczne TDS i wszystkie + pliki fontowe gromadzić w katalogu <code>~/texmf/fonts/</code>. + Tym samym pliki <code>.enc</code> znajdują się obecnie w katalogu + <code>~/texmf/fonts/enc/dvips/</code> zaś pliki <code>.map</code> + w katalogu <code>~/texmf/fonts/map/dvips/</code>. + Szczegóły, patrz część dot. <A HREF=#dvips>Dvips</A>. + <li>pliki <code>.sty</code> oraz <code>.fd</code> zawierają makra + włączania fontu do składu i definicje fontów, przydatne dla + użytkowników LaTeX-a. Instalujemy je w ramach katalogu + przeznaczonego na makra i style: <code>~/texmf/tex/latex/</code>. + Jeśli pakiet dystrybucyjny z fontami nie zawiera takich plików, + należy je odszukać w innym, towarzyszącym pakiecie. + Szczegóły, patrz część dot. <A HREF=#latex>LaTeX</A>. +</ul> +</p> +<p>Po skopiowaniu plików do odpowiednich katalogów i odświeżeniu +bazy danych instalacji, mapy fontowe powinny być +następnie <i>zarejestrowane</i> w głównym pliku mapowań +<code>psfonts.map</code>. Proces ten jest obecnie znacznie ułatwiony: +w katalogu <code>~/texmf/web2c/</code> znajduje się plik +<code>updmap.cfg</code>; należy do niego dopisać deklaracje dodawanych +do instalacji map fontowych, np:</p> +<code>Map antt-qx.map</code><br> +<code>Map antt-ec.map</code></p> +<p>itd. Następnie należy uruchomić program <code>updmap</code>, który +zaktualizuje nie tylko wspomniany <code>psfonts.map</code>, ale także +pliki mapowań dla programów <code>pdftex</code> oraz <code>dvipdfm</code>. +</p> + +<A NAME="textfm"><h3>TeX</h3> +<p> + Pliki <code>.tfm</code> powinny być umieszczone w katalogu, + w którym TeX szuka tego typu plików. W instalacji TeX-a + o strukturze katalogów zgodnej z TDS + będzie to <code>~/texmf/fonts/tfm/</code>. Znak <code>~</code> oznacza + tu korzeń drzewa TeX-owego, np. <code>/usr/TeX</code> lub + <code>C:\tex</code>. + Dla wprowadzenia porządku dobrze jest utworzyć podkatalog, który będzie + przechowywał nowo instalowane pliki. + Pliki metryczne Antykwy Toruńskiej można np. umieścić + w katalogu <code>~/texmf/fonts/tfm/public/antt/</code> +</p> + W systemach TeX-a opartych na bibliotece + <A href="../poczatki/web2c.html">Web2c</a> +<!-- (<A href="ftp://ftp.GUST.org.pl/TeX/systems/win32/fptex">fpTeX</A>, + <A href="ftp://ftp.GUST.org.pl/TeX/systems/unix/teTeX">teTeX</A>) --> + (np. <A href="http://tug.org/texlive">TeX Live<A>) + istnieje <em>główny plik konfiguracyjny</em> systemu, którym jest + plik <code>texmf.cnf</code>, znajdujący się + zwykle w katalogu <code>~/texmf/web2c/</code>. + <code>texmf.cnf</code> zawiera deklaracje określające katalogi, + w których znajdują się poszczególne części składowe systemu. + I tak zmienna <code>TFMFONTS</code> określa listę katalogów, + w których TeX ma szukać plików TFM. + W naszej instalacji zmienna <code>TFMFONTS</code> ma wartość: +</p> +<pre> + TFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/tfm// +</pre> +</p> +Użyta tu notacja jest opisana w pliku konfiguracyjnym +<code>texmf.cnf</code>. Jej interpretacja +dla powyższego przykładu brzmi: znajdź pliki <code>.tfm</code> w katalogu +bieżącym (kropka) a następnie w podkatalogach, kolejno, +<code>fonts/tfm/</code> katalogów z instalacją TeX-ową +(zmienna <code>$TEXMF</code>) lub/ewentualnie +w <code>$VARTEXFONTS/tfm/</code> i wszystkich ich podkatalogach +(znaki <code>//</code>). + +<a name ="MikTeX"> +<p> + W przypadku popularnej w środowisku MS Windows dystrybucji + <A href="ftp://ftp.GUST.org.pl/TeX/systems/win32/miktex">MikTeX</A> + idea jest podobna ale nieco inne są szczegóły (dystrybucja ta + nie jest oparta na Web2c, ale w pełni zgodna z TDS). Główny plik + konfiguracyjny <code>miktex.ini</code> znajduje się w katalogu + <code>~\miktex\config\</code>. + Zapis zmiennych i ich nazwy różnią się od ich odpowiedników + w dystrybucjach fpTeX i teTeX. + I tak do określenia katalogów zawierających pliki <code>TFM</code> + MikTeX używa zmiennej <code>TFMPath</code>, zaś zapis może wyglądać + następująco: +</p> +<pre> +TFMPath=.;%R\fonts\tfm// +</pre> +<p> +Notacja użyta w przykładzie i jej interpretacja +jest opisana w pliku konfiguracyjnym <code>miktex.ini</code> +oraz w dokumentacji dystrybucji. +</p> +<p> +<small> + Pliki <code>.afm</code> (Adobe Font Metric) nie są wprawdzie wykorzystywane + przez TeX-a, ale mogą być potrzebne dla innych programów wspomagających. + Umieścić je należy w katalogu + <code>~/texmf/fonts/afm/public/antt</code>. +</p> +<p> + Definiowana w pliku <code>texmf.cnf</code> zmienna + <code>AFMFONTS</code> (lub zmienna <code>AFMPath</code> + z pliku <code>miktex.ini</code> w przypadku dystrybucji + <A href="#MikTeX">MikTeX</A>) + określa listę katalogów, w których programy + mają szukać plików AFM. W naszej instalacji zmienna + <code>AFMFONTS</code> ma wartość: +</p> +<pre> + AFMFONTS = .;$TEXMF/fonts/afm// +</pre> +</p> +<p> + Pliki <code>.pfm</code> -- jeżeli takowe są dołączone do pakietu + z fontami -- nie są wykorzystywane przez żaden program systemu TeX; + można je umieścić, dla porządku, w katalogu + <code>~/texmf/fonts/type1/public/antt</code>. Pliki te mogą być przydatne + w systemach Windows i OS/2 jeśli chcemy korzystać z fontów + w innych aplikacjach i jeśli posiadamy program ATM (Adobe Type + Manager). +</small> +</p> +<A NAME="dvips"><h3>dvips</h3> +<p> + Podstawowymi i najważniejszymi plikami konfiguracyjnymi programu + <code>dvips</code> są: <code>config.ps</code> oraz <code>psfonts.map</code>. + Pierwszy z nich znajdziemy się w katalogu <code>~/texmf/dvips/config/</code>. + Plik <code>config.ps</code> może zawierać deklaracje m.in. używanych przez + program map fontowych (standardowo jest to <code>psfonts.map</code>), zaś + plik <code>psfonts.map</code> zawiera informacje niezbędne do prawidłowego + wykorzystania fontu Type 1 przez sterownik; jest to + tzw. mapa fontów używanych przez program. + Właściwe pliki fontowe (<code>.pfb</code>) powinny być umieszczone + w katalogu przeszukiwanym przez sterownik <code>dvips</code>. + W systemie TeX o strukturze katalogów zgodnej z TDS będzie to + <code>~/texmf/fonts/type1/</code>. Także w tym przypadku dobrze + jest utworzyć podkatalog, np. pliki <code>.pfb</code> Antykwy Toruńskiej + można umieścić w katalogu + <code>~/texmf/fonts/type1/public/antt/</code>. +</p> +<p> + Definiowana w pliku <code>texmf.cnf</code> zmienna + <code>T1FONTS</code> (lub zmienna <code>Type1Path</code> + z pliku <code>miktex.ini</code> w przypadku instalacji + <A href="#MikTeX">MikTeX</A>) + określa listę katalogów, w których dvips + ma szukać fontów Type 1. W naszej instalacji (Web2c) zmienna + <code>T1FONTS</code> ma wartość: +</p> +<pre> + T1FONTS = .;$TEXMF/fonts/type1// +</pre> +</p> +<p> + Zawartość plików <code>.map</code>, dostarczonych zwykle + w pakiecie z fontami (dla Antykwy Toruńskiej jest to kilka plików), + należy dołączyć do głównego pliku map fontowych + <code>psfonts.map</code> (w strukturze katalogów zgodnej z TDS + plik ten znajduje się w katalogu <code>~/texmf/fonts/dvips/map/updmap/</code>). + Wykonuje to wspomniany powyżej program <code>updmap</code>. + W starszych instalacjach zawartość plików <code>.map</code> należało + ręcznie dopisać do pliku <code>psfonts.map</code>, albo po prostu + zadeklarować je w pliku konfiguracyjnym + <code>~/texmf/dvips/config/config.ps</code> -- po deklaracji: +<pre> +p psfonts.map +</pre> +dopisać wiersz, np.: +<pre> +p +antt-qx.map +</pre> + itd. (uwaga: znak <code>+</code> jest istotny). + Pliki <code>.map</code> należy umieścić w katalogu + <code>~/texmf/fonts/map/dvips/antt/</code>. + Fonty <a href="./index.html#Antyktor">Antykwa Toruńska</a>, + <a href="./index.html#Antykp">Antykwa Półtawskiego</a>, + czy <a href="./index.html#texgyre">TeX Gyre Termes</a> + oraz wiele innych posiadają ponadto pliki <code>.enc</code> potrzebne do + zmiany wewnętrznego kodowania fontu na kodowanie wymagane przez TeX-a. + Pliki takie należy umieścić w ramach katalogu +<code>~/texmf/fonts/enc/dvips/</code>. + Dla Antykwy Toruńskiej podkatalog będzie miał nazwę <code>antt/</code>. +</p> +<p> + Jeżeli instalujemy font samodzielnie i nie posiadamy gotowego + pliku <code>.map</code> to powinniśmy dokonać odpowiedniego + wpisu do głównego pliku mapowego <code>psfonts.map</code>. + Więcej informacji na ten temat można znaleźć w punkcie + <a href="font-abc.html#Pliki-cnf"><i>Pliki konfiguracyjne sterownika DVIPS</i></a> + z artykułu <i>Fontowe ABC</i>, + B. Jackowskiego i S. Wawrykiewicza. +</p> + +<small> +<p> +Często zadawanym przez użytkowników pytaniem jest: <em>dlaczego dvips +nie ,,widzi'' standardowych fontów CM w formacie Type 1 +i ładuje zamiast nich fonty bitmapowe (.pk), które źle się prezentują +na ekranie, szczególnie w powiększeniach?</em><br> +Odpowiedź jest prosta: do niedawna fonty CM Type 1 (choć często obecne +w instalacji) nie były wyszczególnione w pliku +<code>psfonts.map</code>. Wynikało to głównie z istnienia dwóch +dystrybucji BaKoMa i BlueSky Research. Włączenie ładowania fontów +CM Type 1 przez program <code>dvips</code> wymaga odblokowania wiersza +(usunięcia znaku %): +<pre> +p +bsr.map +</pre> +co dołączy mapowania fontów BlueSky Research do standardowych mapowań +deklarowanych w pliku <code>psfonts.map</code>. +</small> + +<A NAME="latex"><h3>LaTeX</h3> +<p> + Aby móc wykorzystać zainstalowane fonty użytkownicy LaTeX-a + <em>muszą</em> jeszcze zainstalować odpowiedni + <em>pakiet</em>. Niekiedy może się zdarzyć, że pakiet + z fontami <em>nie</em> zawiera odpowiedniego pakietu + LaTeX-owego, który -- jeżeli nie ma go w standardowej dystrybucji + LaTeX-a -- trzeba odnaleźć i zainstalować samodzielnie. Pakiet + taki zawiera styl włączający dany krój do składu (z reguły jest + to plik z rozszerzeniem <code>.sty</code>) + oraz plik (lub pliki) z definicją fontu (z reguły + z rozszerzeniem <code>.fd</code>). + Instalacja polega na skopiowaniu plików <code>.sty</code> + i <code>.fd</code> do katalogu, w którym znajdują się inne pakiety LaTeX-owe, + np. do <code>~/texmf/tex/latex/</code>.<br> + Pliki <code>.sty</code> i <code>.fd</code> fontów PL oraz + <code>cc-pl</code> (spolonizowane fonty Computer Concrete) dla LaTeXa są + standardowo zawarte w pakiecie Platex. Pozostałe dostępne polskie + fonty (a więc te, które udostępniono jedynie w formatach + obwiedniowych Type 1 i/lub TrueType) zawierają pliki dla LaTeXa + w pakietach dystrybucyjnych. +</p> +<!--...................................................................--> + +</p> +<A NAME="pdftex"><h3>pdfTeX/pdfLaTeX</h3> +<p> + Program pdfTeX jest rozszerzeniem TeX-a, który tworzy + (właśnie w trybie rozszerzonym) plik wynikowy w formacie + PDF (Portable Document Format), zamiast typowego DVI. Hipertekstowe pliki + PDF mogą być przeglądane na wielu platformach systemowych dzięki + udostępnionemu bezpłatnie programowi Adobe Acrobat Reader, zachowując przy + tym wszystkie szczegóły układu strony. Opisana powyżej instalacja fontów + Type1 różni się dla pdfTeX jednym szczegółem: należy zadbać aby zawartość + pliku mapy fontowej została dołączona (najlepiej przez program + <code>updmap</code>) do pliku <code>pdftex.map</code> czytanego przez program + pdfTeX; znajduje się on obecnie w katalogu + <code>~/texmf/fonts/map/pdftex/updmap/</code>. + W aktualnych wersjach pdfTeX użycie danej mapy fontowej może + być także wprost zadeklarowane w pliku dokumentu.<br> + + Tworząc pliki PDF musimy pamiętać aby stosować <strong>wyłącznie</strong> + fonty obwiedniowe (Type1 lub True Type -- patrz niżej), ponieważ fonty + bitmapowe są zwykle fatalnie wyświetlane w przeglądarce. + Dotyczy to szczególnie użytkowników LaTeXa, którzy przyzwyczaili się + do stosowania fontów EC, które są domyślnie włączane po deklaracji + w preambule pliku:<br> + <code>\usepackage[T1]{fontenc}</code>.<br> + Otóż nie ma fontów EC w formacie Type 1, choć są różne zastępniki + (ładowanie dodatkowych pakietów np. <code>ae</code>, użycie fontów + <code>cmsuper</code> itp.). Obecnie zalecane jest użycie fontów + <a href="./index.html#LModern">Latin Modern</a>, czyli dopisanie (prócz + powyższej deklaracji) w preambule:<br> + <code>\usepackage{lmodern}</code>.<br> +</p> + +<p> +Wiele szczegółów na temat instalowania fontów Type 1 zawiera artykuł +<a href="ftp://ftp.gust.org.pl/pub/CTAN/info/Type1fonts/fontinstallationguide/fontinstallationguide.pdf"> +The Font Installation Guide</a> Phillipa Lehmana. +</p> +<!--...................................................................--> +<hr> + +<A NAME="fontyttf"> +<h2> Instalowanie fontów TrueType </h2> +<p> + W powszechnie używanych w chwili obecnej + dystrybucjach TeX-a (fpTeX, teTeX, MikTeX) nie ma sterowników potrafiących + bezpośrednio wykorzystać fonty w formacie TrueType. + Chcąc skorzystać z takich fontów należy dokonać odpowiedniej + konwersji, która może polegać na ich zamianie albo na fonty bitmapowe + w formacie <code>.pk</code>, albo na zamianie na + fonty w formacie Type 42, a ostatnio także do formatu + Type 1. +</p> +<p> + Pierwszy sposób można określić mianem standardowego -- jeżeli umieścimy pliki + <code>.ttf</code> i <code>.tfm</code> w odpowiednich katalogach, + to w dystrybucjach, które omawiamy, przy uruchomieniu program + <code>dvips</code> lub sterownika ekranowego (<code>yap</code>, + <code>xdvi</code>), zostaną automatyczne uruchomione programy generujące + fonty <code>.pk</code> o odpowiedniej rozdzielczości, podobnie jak + sprawa ma miejsce przy generowaniu fontów <code>.pk</code> na podstawie + plików źródłowych <code>.mf</code>. + Sposób ten ma jedną <em>zasadniczą wadę</em>: + fonty <code>.pk</code> -- jak każde fonty bitmapowe -- nie nadają się + do wykorzystania przy tworzeniu dokumentów w formacie PDF. +</p> +<p> + <strong>Uwaga 1</strong>: + Ponieważ współczesne systemy TeX-owe potrafią skorzystać + z fontów <code>.ttf</code> ,,z definicji'', + ale jednocześnie sposób ten nie bardzo się nadaje, np. do tworzenia + wysokiej jakości plików PDF, poniżej omawiamy bardziej szczegółowo jedynie + wykorzystanie fontów <code>.ttf</code> po ich konwersji do formatu Type 42. +</p> +<p> + <strong>Uwaga 2</strong>: + Zakładając, że pakiet, który instalujemy zawiera metryki fontów <code>.tfm</code>, + instalacja fontów TrueType nie różni się zbytnio od instalowania + fontów Type 1. Jeżeli nie dysponujemy plikami <code>.tfm</code>, + to sprawa się komplikuje, bo utworzenie takich plików nie jest + sprawą trywialną. W grę wchodzą sprawy różnego kodowania + znaków, tzw. fonty wirtualnych itp. Ponieważ niniejszy tekst ma charakter + wprowadzenia dla początkujących nie będziemy omawiać tego zagadnienia. + <!-- [prawdę powiedziawszy w przypadku fontów TrueType nie + jest ono zbyt realistyczne, gdyż <i>z reguły</i> nie dysponujemy + przygotowanymi przez kogoś plikami <code>.tfm</code> czy + <code>.enc</code>]. --> + Niemniej jednak w aktualnych dystrybucjach znajdziemy program +<code>ttf2tfm</code> tworzący pliki <code>.tfm</code>. + </p> + <p> + Informacje na temat narzędzi i problemów zamiany + plików <code>ttf</code> na pliki <code>tfm</code> można znaleźć + w artykule T. Przechlewskiego <i>Uwagi nt. wykorzystania fontów + True Type</i> (Biuletyn GUST, 11/1998). Najbardziej aktualne informacje + na ten temat zawiera katalog <code>info/TrueType/</code> na serwerach CTAN. +</p> +<A NAME="ttftld"> +<h3>TeX/LaTeX, dvips</h3> +<p> + Pliki <code>.tfm</code>, <code>.enc</code> oraz <code>.map</code> + kopiujemy w sposób analogiczny do opisanego wyżej. + <!-- Pliki <code>.ttf</code> w większości instalacji TeX-wych nie mogą + być bezpośrednio wykorzystane, konieczne jest utworzenie + na ich podstawie fontów typu 42 (Type 42).--> + Fonty Type 42 mogą być wykorzystane przez program <code>dvips</code> + a powstały plik PostScriptowy może być wydrukowany za pomocą + programu ghostscript i innych interpretatorów PostScripta (byle nie + bardzo starych). Do zamiany pliku <code>.ttf</code> na font + Type 42 (załóżmy, że taki font ma rozszerzenie + <code>.t42</code>) można wykorzystać program + <A href="ftp://ftp.giga.or.at/pub/nih/ttftot42"><code>ttftot42</code></A>: +<pre> + ttftot42 anttr +</pre> + Powstały w wyniku plik <code>.t42</code> kopiujemy do odpowiedniego + katalogu. W systemie TeX o strukturze katalogów + zgodnej z TDS będzie to <code>~/texmf/fonts/type42/</code>. + Należy się upewnić gdzie dvips szuka fontów Type 42. + Zaglądamy w tym celu do głównego pliku konfiguracyjnego + systemu TeX, którym jest plik <code>texmf.cnf</code> (zwykle katalog + <code>~/texmf/web2c/</code>). + Powinien on zawierać wpis podobny do poniższego: +</p> +<pre> + % Type 42 outline fonts. + T42FONTS = .;$TEXMF/fonts/type42// +</pre> +<p> + Jeżeli takowego wpisu nie ma, to trzeba go dodać. Powyższy + zapis oznacza, że fonty są szukane albo w katalogu bieżącym + (kropka) albo w katalogu (i wszystkich jego + podkatalogach) <code>$TEXMF/fonts/type42//</code>, gdzie + <code>$TEXMF</code> oznacza korzeń drzewa TeX-owego. +</p> +<p> + Wydaje się, że aktualnie lepszym rozwiązaniem niż konwersja do formatu + Type 42 jest skorzystanie z programu do konwersji fontów TrueType + do formatu Type 1. Patrz: + <a href="ftp://ftp.gust.org.pl/pub/CTAN/info/TrueType/">CTAN/info/TrueType</a>. +</p> +<A NAME="pdftexttf"><h3>pdfTeX/pdfLaTeX</h3> +<p> + W trybie rozszerzonym pdfTeX potrafi korzystać bezpośrednio + z fontów <code>.ttf</code> -- nie musimy zatem ich konwertować + do formatu Type 42 bądź Type 1. Więcej szczegółów można + znaleźć w opisie programu pdfTeX. +</p> +<p> + <i>T. Przechlewski i S. Wawrykiewicz</i><br> + <i>Ostatnia modyfikacja 05.05.2014</i> +</P> +<hr> +<A HREF="./index.html#infod"><IMG ALIGN="BOTTOM" SRC="back.gif">Powrót</A> +</body> +</html> diff --git a/info/tex-virtual-academy-pl/fonty/index.html b/info/tex-virtual-academy-pl/fonty/index.html new file mode 100644 index 0000000000..c7876bbb41 --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/index.html @@ -0,0 +1,289 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> +<head> + <meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> + <meta name="keywords" lang="en" content="Computer fonts, + Antykwa Poltawskiego, Antykwa Torunska, TeX Gyre, + Latin Modern, Poltawski, Gardzielewski" > + <meta name="keywords" lang="pl" content="Fonty komputerowe, + Antykwa Półtawskiego, Antykwa Poltawskiego, Adam Półtawski, Poltawski + Antykwa Toruńska, Antykwa Torunska, Zygfryd Gardzielewski, + TeX Gyre, Latin Modern" > + <LINK REL=STYLESHEET TYPE="text/css" HREF="./tpstyle.css"> + <title>Polskie fonty komputerowe</title> +</head> +<body> +Patrz także: [<a href="font-abc.html">Fontowe ABC</a>] +[<a href="fonts_inst.html">Instalowanie fontów Type 1/TrueType +w systemie TeX</a>][<a href="nfss.html">Fonty w LaTeX2e</a>] +[<a href="qx-info.html">kodowanie QX</a>] +</p> +<hr> +<h1>Polskie fonty komputerowe</h1> + +<!-- <base href="http://www.gust.org.pl/doc/fonts/polish_fonts" /> --> + +<p> +Artykuł przedstawiający dorobek GUSTu w dziedzinie polonizacji fontów. +Wszystkie przedstawione tu fonty dystrybuowane są na zasadach wolnego +oprogramowania i są dostępne za darmo. +</p> + +<p> +Polskie tradycje drukarstwa są prawie tak samo stare jak tradycje +tej sztuki w świecie. Biblia Jana Gutenberga -- pierwsza w Europie +książka wydrukowana ruchomymi czcionkami -- powstała w Moguncji w 1452 +r. W Polsce pierwszą książkę wydrukowano w 1473 r. czyli 21 lat po +Biblii Gutenberga. Dla porównania w Paryżu pierwszy dokument drukowany +powstał w 1470 r. -- zaledwie trzy lata wcześniej. Od tego czasu w +polskich drukarniach wykorzystywano materiał zecerski wzorowany na +czcionkach zagranicznych, ale powstało także wiele oryginalnych pism +autorstwa polskich zecerów i typografów.</p> + +<p>Do niedawna pismom tym groziło zapomnienie, gdyż zagraniczni +producenci fontów komputerowych nie korzystają z polskiego dorobku +typograficznego.</p> + +<p>Polska Grupa Użytkowników Systemu TeX wspiera inicjatywę opracowania +wersji komputerowych <i>polskich pism drukarskich</i>. GUST wspiera +także projekty <i>polonizacji popularnych pism drukarskich</i> w +oparciu o publicznie dostępne fonty rozpowszechniane na licencji GNU +lub zbliżonej do licencji GNU (fonty z dystrybucji programu Ghostscript +oraz rodziny fontów CM i CC). <i>Dotychczasowe rezultaty</i> (tj. +opracowane i udostępnione do chwili obecnej fonty) zestawiono poniżej. +Mogą być one wykorzystane we wszystkich współczesnych programach +graficznych i edytorskich.</p> + +<p>Fonty mogą być wykorzystywane i rozpowszechniane bezpłatnie.</p> + +<h4>Rodzina krojów PL</h4> + +<p>Poszerzona o polskie znaki diakrytyczne rodzina fontów <i>Computer +Modern</i> (CM). Fonty CM, wchodzące w skład każdej instalacji +TeX-owej, zostały zaprojektowane przez Donalda E. Knutha w opracowanym +przez niego programie (i języku) METAFONT. Autorami fontów PL są Marek +Ryćko i Bogusław Jackowski. Fonty dostępne są w wersji źródłowej w +większości współczesnych dystrybucji systemu TeX.</p> + +Pobierz: <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/cm-pl/pl-mf.zip">ftp.gust.org.pl</a> + +<p>Janusz M. Nowacki przygotował fonty PL w formacie Type 1. W maju +2000 r. fonty PL zostały zmodyfikowane i przystosowane do użycia także +w programach graficznych i edytorskich (np. w Windows).</p> + +<p>Rodzina PL w formacie Adobe Type 1: <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/cm-pl/plpsfont.zip">ftp.gust.org.pl</a>.</p> + +<h4>Rodzina krojów CC-PL</h4> + +<p>Poszerzona o polskie znaki diakrytyczne rodzina fontów <i>Computer +Concrete</i> (CC), która została zaprojektowana przez Donalda E. Knutha +specjalnie do składu publikacji <i>Concrete Mathematics</i> w +opracowanym przez niego programie (i języku) METAFONT. Autorami fontów +cc-pl są Marek Ryćko i Bogusław Jackowski.</p> + +<p>Rodzina CC-PL: <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/cc-pl/cc-pl.zip">ftp.gust.org.pl</a> +lub <a href="ftp://ftp.dante.de/tex-archive/language/polish/cc-pl.zip">ftp.dante.de</a>.</p> + +<p>W styczniu 2002 r. Włodek Bzyl przetworzył fonty cc-pl do formatu +Type 1.</p> + +<p>Rodzina CC-PL w formacie Adobe Type 1: <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/cc-pl/cc-plps.zip">ftp.gust.org.pl</a></p> + +<a name="Antyktor"><h4>Antykwa Toruńska</h4> + +<p>Dwuelementowa antykwa zaprojektowana przez toruńskiego typografa +Zygfryda Gardzielewskiego (współpraca Józef Gruszka). Pismo to używane +jest głównie do składania akcydensów. Antykwę Toruńską odlano pierwszy +raz w 1960 roku w Odlewni Czcionek ,,Grafmasz'' w Warszawie. +Produkowana była w odmianach: zwykłej, półgrubej i pochyłej (brak +półgrubej kursywy). Autorem wersji elektronicznych jest Janusz M. +Nowacki. Fonty Antykwa Toruńska od wersji 2.0 zostały znacznie +wzbogacone. Aktualna wersja 2.03 zawiera ponad 1200 znaków (poza +standardowym zestawem, również cyfry nautyczne, znaki cyryliczne, +greckie, wietnamskie, matematyczne itp.). Dodano poza tym wiele odmian: +Light, Medium, Condensed i ich wariantów. Fonty dostępne są w +formatach: Type 1, TrueType i OpenType.</p> + +<p>Antykwa Toruńska w formacie Adobe Type 1: <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/replicas/antt/">ftp.gust.org.pl</a> +lub <a href="ftp://ftp.dante.de/tex-archive/fonts/antt/">ftp.dante.de</a>.</p> + +<a name="Antykp"><h4>Antykwa Półtawskiego</h4> + +<p>Dwuelementowa antykwa zaprojektowana w latach 1923--1928 przez +grafika i typografa Adama Półtawskiego. Po raz pierwszy pismo to +zostało odlane w 1931 roku w firmie Idźkowski i S-ka. Produkowana była +w trzech odmianach: zwykłej, półgrubej i pochyłej. Komputerowa replika +tego kroju została poszerzona także o półgrubą kursywę. Wersję +elektroniczną przygotowali Janusz M. Nowacki, Bogusław Jackowski i +Piotr Strzelczyk.</p> + +<p>Antykwa Półtawskiego w formacie Adobe Type 1: <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/replicas/antp/antp.zip"> +ftp.gust.org.pl</a> lub <a href="ftp://ftp.dante.de/tex-archive/fonts/psfonts/polish/antp/">ftp.dante.de</a>.</p> + +<p>Antykwa Półtawskiego w formacie TrueType: <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/replicas/antp/antp-ttf.zip"> +ftp.gust.org.pl</a>.</p> + +<h4 id="fontyquasi">Fonty Quasi (qfonts)</h4> + +<p>Fonty ze zbioru Quasi to spolonizowane fonty z dystrybucji programu +Ghostscript. Autorami polonizacji są Bogusław Jackowski, Janusz Marian +Nowacki i Piotr Strzelczyk. Prace nad adaptacją były częściowo +sponsorowane przez GUST i Komitet Badań Naukowych. Spolonizowano +łącznie 6 rodzin fontowych: QuasiBookman, QuasiChancery, QuasiCourier, +QuasiPalatino, QuasiSwiss (i QuasiSwissCondensed), QuasiTimes.</p> + +<p><b>Uwaga:</b> fonty Quasi nie są już udostępniane i zostały zastąpione przez +odpowiednie rodziny fontów z zestawu <a href="#texgyre">TeX +Gyre</a>. Dla wyjątkowych sytuacji fonty Quasi zostały zarchiwizowane +w <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/archiwalia/oldfonts/qfonts/"> +archiwum GUST</a></p> + +<a name="Lmodern"><h4>Rodzina krojów Latin Modern</h4> + +<p>Znacznie rozszerzona, o łacińskie znaki narodowe, a także o rozmaite +symbole, rodzina fontów Computer Modern (CM) w formacie Type 1. +Czcionki Latin Modern oparte są na fontach Computer Modern Type 1, +opublikowanych przez American Matematical Society (AMS 1997). Projekt +jest prowadzony przez Bogusława Jackowskiego i Janusza Mariana +Nowackiego. Fonty LM mogą być używane zamiast fontów PL, CM, CS +(czeskie), VNR (wietnamskie). Więcej informacji na temat fontów LM +można znaleźć na <a href="http://www.gust.org.pl/projects/e-foundry/latin-modern">tej +stronie</a>.</p> + +<p>Pobierz fonty Latin Modern (Type 1/OpenType): <a href="http://www.gust.org.pl/projects/e-foundry/latin-modern/download/"> +www.gust.org.pl</a>.</p> + + +<h4 id="texgyre">Fonty TeX Gyre</h4> + +<p>Fonty ze zbioru TeX Gyre to fonty z dystrybucji programu Ghostscript +ze znacznie rozszerzonym repertuarem dostępnych znaków (fonty wchodzące w skład rodziny Latin Modern i rodzin z kolekcji TeX Gyre obejmują ten sam zestaw łacińskich znaków diakrytycznych). Uwaga: fonty TeX Gyre zastępują odpowiednie kroje +z zestawu fontów Quasi. Autorami są Bogusław +Jackowski i Janusz Marian Nowacki. Udostępniono +następujące rodziny fontowe:</p> + +<dl> +<dt>TeX Gyre Adventor</dt> + +<dd> +<p>Pobierz: TeX Gyre Adventor: <a href="http://www.gust.org.pl/projects/e-foundry/tex-gyre/adventor/">www.gust.org.pl</a></p> +</dd> + +<dt>TeX Gyre Bonum</dt> + +<dd> +<p>dawniej Quasi Bookman, to uwspółcześniona i rozbudowana rodzina +czcionek zbudowana na podstawie URW Bookman L.</p> + +<p>Pobierz: TeX Gyre Bonum: <a href="http://www.gust.org.pl/projects/e-foundry/tex-gyre/bonum/">www.gust.org.pl</a></p> +</dd> + +<dt>TeX Gyre Chorus</dt> + +<dd> +<p>Pobierz: TeX Gyre Chorus: <a href="http://www.gust.org.pl/projects/e-foundry/tex-gyre/chorus/">www.gust.org.pl</a></p> +</dd> + +<dt>TeX Gyre Cursor</dt> + +<dd> +<p>Pobierz: TeX Gyre Cursor: <a href="http://www.gust.org.pl/projects/e-foundry/tex-gyre/cursor/">www.gust.org.pl</a></p> +</dd> + +<dt>TeX Gyre Heros</dt> + +<dd> +<p>dawniej Quasi Swiss, to uwspółcześniona i rozbudowana rodzina +czcionek zbudowana na podstawie URW Nimbus Sans L.</p> + +<p>Pobierz: TeX Gyre Heros: <a href="http://www.gust.org.pl/projects/e-foundry/tex-gyre/heros/">www.gust.org.pl</a></p> +</dd> + +<dt>TeX Gyre Pagella</dt> + +<dd> +<p>dawniej QuasiPalatino, to uwspółcześniona i rozbudowana rodzina +czcionek zbudowana na podstawie URW Palladio L.</p> + +<p>Pobierz: TeX Gyre Pagella: <a href="http://www.gust.org.pl/projects/e-foundry/tex-gyre/pagella/">www.gust.org.pl</a></p> +</dd> + +<dt>TeX Gyre Termes</dt> + +<dd> +<p>dawniej QuasiTimes, to uwspółcześniona i rozbudowana rodzina +czcionek zbudowana na podstawie rodziny Nimbus Roman No9 L.</p> + +<p>Pobierz: TeX Gyre Termes: <a href="http://www.gust.org.pl/projects/e-foundry/tex-gyre/termes/">www.gust.org.pl</a></p> +</dd> + +</dl> + +<h4>Iwona</h4> + +<p>Iwona jest dwuelementową czcionką bezszeryfową. Powstała jako +alternatywna wersja czcionek Kurier, które były pracą dyplomową z +liternictwa drukarskiego na warszawskiej Akademii Sztuk Pięknych, pod +okiem Romana Tomaszewskiego w 1975 roku. Kurier powstawał jako pismo +przeznaczone dla gazet i innej prasy do składania techniką linotypową. +Fonty Iwona są alternatywną wersją fontów Kurier. Różnią się brakiem +charakterystycznych dla Kuriera pułapek farbowych.</p> + +<p>Dystrybucja zawiera znacznie poszerzony zestaw znaków, +uwzględniający współczesne alfabety: łacińskie (w tym wietnamski), +cyryliczne, grecki oraz dodatkowe symbole (w tym matematyczne). Autorem +fontów jest Janusz M. Nowacki.</p> + +<p>Iwona (Type 1/OpenType): <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/replicas/iwona/">ftp.gust.org.pl</a> +lub <a href="ftp://ftp.dante.de/pub/tex/fonts/iwona/">ftp.dante.de</a>.</p> + +<h4>Kurier</h4> + +<p>Kurier jest dwuelementową czcionką bezszeryfową. Projekt był pracą +dyplomową z liternictwa drukarskiego na warszawskiej Akademii Sztuk +Pięknych, pod okiem Romana Tomaszewskiego. W 1975 roku Kurier +zaprezentowano wśród innych polskich pism na kongresie ATypI w +Warszawie. Kurier powstawał jako pismo przeznaczone dla gazet i innej +prasy do składania techniką linotypową. W założeniach projektowych, +czcionki musiały wytrzymać szereg niszczących kształt graficzny +procesów technologicznych. Wszystko to sprawiło, że podczas +projektowania uwzględniono m.in. odpowiednie światła wewnętrzne liter, +światła międzyliterowe oraz tzw. pułapki farbowe w niektórych +skrzyżowaniach elementów budowy znaków.</p> + +<p>Dystrybucja zawiera znacznie poszerzony zestaw znaków, +uwzględniający współczesne alfabety: łacińskie (w tym wietnamski), +cyryliczne, grecki oraz dodatkowe symbole (w tym matematyczne). Autorem +fontów jest Janusz M. Nowacki.</p> + +<p>Kurier (Type 1/OpenType): <a href="ftp://ftp.gust.org.pl/pub/GUST/contrib/fonts/replicas/kurier/">ftp.gust.org.pl</a> +lub <a href="ftp://ftp.dante.de/pub/tex/fonts/kurier/">ftp.dante.de</a>.</p> + +<p>Bardziej szczegółowe informacje można znaleźć na stronie <a href="http://www.janusz.nowacki.strefa.pl/">Janusza M. +Nowackiego</a>.</p> + +<h4>Cyklop</h4> + +<p>W latach dwudziestych XX wieku, w pracowni projektowej warszawskiej ,,Odlewni Czcionek J. Idźkowski i S-ka'' opracowano krój pisma drukarskiego o nazwie Cyklop. Dwuelementowe, bezszeryfowe czcionki charakteryzują się bardzo dużym kontrastem. Stemy pionowe są znacznie grubsze od stemów poziomych. Wewnętrzne oczka liter mają w większości kształt wydłużonego prostokąta. Dzięki temu znaki mają niepowtarzalny kształt. +Cyklop, w postaci czcionek ołowianych, produkowany był w odmianie kursywnej w rozmiarach 8-48 pt. Używany był bardzo intensywnie w tytulariach gazetowych i drukach akcydensowych. Zecerzy sięgali po niego w okresie miedzywojennym, w okresie okupacji w prasie podziemnej. Stosowany był aż do poczatków druku offsetowego i składu komputerowego. Fonty, wygenerowane przy użyciu pakietu Metatype1, uzupełniono o kompletny zestaw akcentowanych liter łacińskich (także wietnamskich oraz znaki, których było brak w oryginalnym zestawie. Wygenerowano również odmianę prostą. Autorem +fontów jest Janusz M. Nowacki.</p> + +<p>Cyklop (Type1/OpenType) można pobrać ze strony +<a href="http://nowacki.strefa.pl/">Janusza M. Nowackiego</a> +lub z <a href="ftp://ftp.gust.org.pl/pub/CTAN/fonts/cyklop/">archiwum CTAN</a>. +</p> + +<A NAME="infod"> +<h2> Informacje dodatkowe </h2> +<p> +[<a href="font-abc.html">fontowe ABC</a>] +[<a href="fonts_inst.html">instalowanie fontów Type 1/TrueType +w systemie TeX</a>][<a href="nfss.html">Fonty w LaTeX2e</a>] +[<a href="qx-info.html">kodowanie QX</a>] +</p> + +<hr> +<a href="../index.html">GUST</a>, +(<i>StaW. Ostatnie zmiany 29.05.2008</i>). +</body> +</html> diff --git a/info/tex-virtual-academy-pl/fonty/nfss.html b/info/tex-virtual-academy-pl/fonty/nfss.html new file mode 100644 index 0000000000..d87ba4f4ee --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/nfss.html @@ -0,0 +1,566 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> +<head> +<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> +<meta name="keywords" lang="en" content="Polish TeX Users Group, fonts and LaTeX2e, NFSS"> +<LINK REL=STYLESHEET TYPE="text/css" HREF="./tpstyle.css"> +<title>LaTeX2e i fonty</title> +</head> +<body> + +<h1>LaTeX2e i fonty</h1> +<!-- wolinski@melkor.mimuw.edu.pl zeszyt 10. 1998 --> + +<p> +Poniższy dokument jest częścią artykułu Marcina Wolińskiego +<em>LaTeX2e a sprawa polska</em>, który ukazał się w Biuletynie +GUST nr 10/1998. Cały artykuł dostępny jest na serwerze GUST +w (spakowanej) +<A HREF="ftp://ftp.gust.org.pl/TeX/GUST/bulletin/10/02-mw.ps.gz">wersji +PostScript.</A> + +<!-- Spis treści ....................................................... --> +<hr> +<A NAME=P0> <ul> + <li><A HREF=#opfont> Opis fontu w nowym sposobie wyboru fontów</A></li> + <ul> + <li><A HREF=#uklad> Układ fontu</A></li> + <li><A HREF=#kroj> Krój pisma (rodzina)</A></li> + <li><A HREF=#grub> Grubość i szerokość</A></li> + <li><A HREF=#odmiana> Odmiana</A></li> + <li><A HREF=#stoppis> Stopień pisma i interlinia</A></li> + </ul> + <li><A HREF=#obsluga> Obsługa typowych sytuacji</A></li> + <li><A HREF=#konfig> Konfigurowanie NFSS</A></li> +</ul> +<hr> + +<h2>NFSS</h2> + +<p> + W niniejszym wprowadzeniu zostanie przedstawiony wyłącznie sposób +zarządzania fontami tekstowymi. Do prezentacji zagadnień związanych ze +składem formuł matematycznych autor nie czuje się jeszcze odpowiednio +przygotowany.</p> + +<p> + TeX ma wbudowany jedynie bardzo prosty sposób dostępu do fontów. Poleceniem +<code>\font</code> można związać nazwę symboliczną z operacją wybrania +fontu załadowanego z konkretnego pliku metrycznego +i o ustalonej wielkości. (W całym niniejszym tekście słowo +font będzie używane na określenie takiej właśnie istności. W sensie +TeXa -- coś załadowanego z konkretnego pliku metrycznego. W sensie +typograficznym -- pismo o ustalonym kroju, odmianie i stopniu.) +Posługiwanie się tak zdefiniowanymi poleceniami na dłuższą metę jest +uciążliwe, ponieważ wywołują one bezpośrednio określoną odmianę +i stopień określonego kroju pisma. Wyobraźmy sobie, że wykonano</p> + +<code>\font\it=plti10</code> + +<p> + Jeśli teraz fragment tekstu zawierający użycie tego polecenia zostanie +przeniesiony z głównego tekstu dokumentu do przypisu, wydarzy się +katastrofa: przypisy są tradycyjnie składane pismem mniejszego stopnia, ale +fragment kursywą będzie większy! </p> + +<p> + Dlatego każdy TeXowy format ma swoją metodę zdefiniowania polecenia +<code>\it</code> tak, aby znaczyło coś w rodzaju ,,przełącz font na +kursywę w bieżącym stopniu''. LaTeX 2.09 zapewniał dostęp do +ustalonego zbioru fontów -- mianowicie krojów Computer Modern -- tak aby +dawało się manipulować niezależnie stopniem i odmianą pisma. Dodanie +nowych fontów do zestawu dostępnego w LaTeXu w praktyce wymagało +ingerencji w plik <code>lfonts.tex</code>, co było zadaniem wyjątkowo +niewdzięcznym, a ponadto prowadziło do powstawania niezgodnych ze sobą +lokalnych wersji LaTeXa. </p> + +<p> + W LaTeXa 2e wbudowano skomplikowany, ale za to bardzo elastyczny, +mechanizm nazywający się NFSS (<em>New Font Selection Scheme</em> -- +nowy sposób wyboru fontów). System ten jest +stosunkowo łatwy w użyciu, zarejestrowanie fontów w systemie jest +elementarne (jeżeli dostępne są pliki opisu fontów -- <em>font descripton +files</em>) i nie wymaga ingerencji w format LaTeXa, natomiast siłą +rzeczy stworzenie plików opisu wymaga odrobiny wiedzy o systemie.</p> + +<A NAME="opfont"> +<h3>Opis fontu w nowym sposobie wyboru fontów</h3> + +<p> + W LaTeXu 2e bieżący font jest charakteryzowany przez pięć elementów: +układ (zestaw znaków), krój (rodzinę), grubość i szerokość, odmianę, +stopień i interlinię. Każdy z tych elementów można wybrać +oddzielnym poleceniem.</p> + +<TABLE FRAME=1 WIDTH=60% ALIGN=center> +<tr bgcolor=white> +<td> układ fontu </td><td> <code>\fontencoding{OT1}</code> </td><tr> +<tr bgcolor=white> +<td> rodzina (krój) </td><td> <code>\fontfamily{cmr}</code> </td><tr> +<tr bgcolor=white> +<td> grubość i szerokość </td><td> <code>\fontseries{m}</code> </td><tr> +<tr bgcolor=white> +<td> odmiana </td><td> <code>\fontshape{n}</code> </td><tr> +<tr bgcolor=white> +<td> stopień i interlinia </td><td> <code>\fontsize{10}{12pt}</code> </td><tr> +<tr bgcolor=white> +<td> </td><td> <code>\selectfont</code> </td><tr> +</TABLE> +</p> + +<p> + Argumenty poleceń wymienione w tabelce odpowiadają domyślnym wartościom +dla dokumentu składanego przy pomocy standardowych klas w stopniu 10pt. +Użycie poleceń <code>\font...</code> nie powoduje od razu włączenia fontu, +ponieważ użytkownik może chcieć zmienić kilka elementów charakterystyki +bieżącego fontu jednocześnie. Dlatego ostateczny wybór fontu zatwierdza się +poleceniem <code>\selectfont</code>.</p> + +<p> + Wszystkie elementy charakterystyki fontu, za wyjątkiem stopnia pisma, można +zmienić jednocześnie poleceniem <code>\usefont</code>. Nie wymaga ono +również zatwierdzenia przez <code>\selectfont</code>.</p> + +<code> +\usefont{OT1}{cmr}{m}{n} +</code> + +<p> + Poszczególne elementy opisu fontu są od siebie niezależne, co daje LaTeXowi +przewagę nad procesorami tekstu. Wyobraźmy sobie, że w ,,zwykłym +procesorze tekstu'' w tekście po polsku używamy wyrażenia ,,\`a +propos''. Ponieważ w ,,polskim'' foncie nie ma znaku \`a, musimy +pobrać symbol z fontu ,,zachodniego''. Jeżeli w późniejszym etapie +opracowania redakcyjnego postanowimy zmienić krój pisma np. z Timesa na +Helveticę, obca litera pozostanie w starym kroju, bo uzyskując ją nie +mogliśmy powiedzieć ,,chcę bieżący krój i odmianę, ale w układzie +zachodnioeuropejskim'', zamiast tego w dokumencie stoi ,,tu ma być +zachodnioeuropejski Times jasny prosty stopnia 10pt''.</p> + +<p> + Gdy NFSS stwierdzi, że dana kombinacja parametrów nie odpowiada żadnemu +istniejącemu fontowi, wypisuje odpowiednią informację do pliku +<code>.log</code> i stara się użyć fontu o możliwie bliskiej +charakterystyce. Niektórzy bardzo nie lubią tej własności NFSS, uważając że +jest to jedno z miejsc, w których LaTeX usiłuje coś (źle) zrobić za +użytkownika. To zachowanie można zmienić. Użycie w preambule +deklaracji</p> + +<code> +\usepackage[pausing]{tracefnt} +</code> + +<p> + powoduje zamianę wszystkich komunikatów o brakujących fontach +w komunikaty o błędach, wymagające interwencji użytkownika.</p> + +<p>Omówię teraz kolejne parametry opisujące font w NFSS.</p> + +<A NAME="uklad"><b>Układ fontu</b> jest najciekawszym elementem, ponieważ wydaje +się, że LaTeX jest jedynym systemem, w którym pojęcie to występuje +jawnie. Układ fontu opisuje, jakie znaki są dostępne w foncie +i w jakich pozycjach. Polecenia akcentowe w LaTeXu +korzystają z informacji o układzie bieżącego fontu, aby użyć +najlepszej dostępnej metody uzyskania danego znaku. +</p> + +<p> + Ponieważ mechanizm sterowania tłumaczeniem znaków na pozycje w foncie +nie występuje w samym TeXu, LaTeXowy mechanizm układów działa na +poziomie makr. W związku z tym dotyczy on tylko znaków dostępnych +poprzez makra. Tabele konwersji kodu wejściowego na poziomie implementacji +dokonują tłumaczenia od razu w pozycje znaków w foncie, ignorując +ten mechanizm. Z drugiej strony pakiet <code>inputenc</code> posługuje +się znakami aktywnymi, które zachowują się jak makra, wykorzystując mechanizm +układów fontów. </p> + +<p> + Nazwy układów są tradycyjnie pisane wielkimi literami i cyframi. +Poniższa tabela zestawia układy fontów należące do standardu LaTeXa. +</p> + +<TABLE frame=1 WIDTH=80% ALIGN=CENTER> +<td> </td><td>Układy fontów w LaTeXu <tr> +<td> OT1 </td><td> Old Text 1 </td><td> układ fontów zastosowany przez Knutha </td><tr> +<td> OT2 </td><td> Old Text 2 </td><td> układ cyrylicy z Washington University </td><tr> +<td> OT3 </td><td> Old Text 3 </td><td> układ fontów <code>wsuipa</code> (?) </td><tr> +<td> OT4 </td><td> Old Text 4 </td><td> układ fontów PL </td><tr> +<td> T1 </td><td> Text 1 </td><td> ,,europejski'' układ fontów (Cork) </td><tr> +<td> T3 </td><td> Text 3 </td><td> IPA -- znaki fonetyczne </td><tr> +<td> T4 </td><td> Text 4 </td><td> układ dla języków afrykańskich </td><tr> +<td> TS1 </td><td> Text Symbol 1 </td><td> dodatkowe symbole tekstowe </td><tr> +<td> OML </td><td> Old Math Letters </td><td> układ fontu matematycznego wg. Knutha </td><tr> +<td> OMS </td><td> Old Math Symbols </td><td> układ symboli wg. Knutha </td><tr> +<td> OMX </td><td> Old Math Extensible </td><td> układ fontu ze znakami ,,rozciągliwymi'' </td><tr> +</TABLE> + +<p> + Układy o nazwach, zaczynających się literą <code>O</code>, zawierają po +128 pozycji. Pozostałe są ,,nowymi'' układami 256-znakowymi. +<code>OT4</code> wyłamuje się z tego schematu, będąc rozszerzeniem +<code>OT1</code>, ale nie wypełniającym wszystkich 256 pozycji. +</p> + +<p> + Układ <code>T1</code> jest ,,nowym'' układem opracowanym na konferencji +w Cork. Zawiera on znaki umożliwiające skład w większości języków +europejskich. <code>TS1</code> jest odpowiadającym mu układem uzupełniającym +zawierającym latające akcenty dla majuskuł (które nie zmieściły się +w <code>T1</code>), znaki ,,copyright'', ,,registered'' i ,,trade +mark'', liczne symbole walut oraz znaki pauzy o długościach pośrednich +między ,,endash'' i ,,emdash'', które powinny uszczęśliwić polskich +redaktorów technicznych. +</p> + +<p> + Jak widać, brak ,,nowych'' układów matematycznych. Wydaje się, że nikt nie +czuje się kompetentny, by takie opracować, lub też układ zaproponowany przez +Knutha funkcjonuje wystarczająco dobrze, a wielojęzyczność nie ma +wielkiego zastosowania do formuł matematycznych.</p> + +<p> + Układy fontów muszą być jawnie deklarowane w dokumencie. Wszystkie +układy, które będą używane w dokumencie powinny zostać wymienione jako +opcje wywołania pakietu <code>fontenc</code>. Na przykład żeby załadować +definicje układu <code>OT2</code> (cyrylica) i <code>OT4</code> (polski) +wykonujemy:</p> +<code> \usepackage[OT2,OT4]{fontenc} </code> +<p> +Ostatni układ wymieniony w tej klauzuli będzie domyślnym układem +dokumentu. </p> + +<A NAME="kroj"> +<b>Krój pisma (rodzina).</b><br> +Krój pisma jest wyróżniony przez jednolitość projektu graficznego. +Jest to wszakże dość nieprecyzyjne określenie, jako że np. antykwa +i kursywa tego samego kroju różnią się dość znacznie kształtem znaków. +Kryterium praktyczne jest więc takie, że krój stanowi taki zbiór +fontów, któremu jego projektant nadał wspólną nazwę, np. Quasi +Palladio.</p> + +<p> + W NFSS stosuje się kilkuznakowe skróty nazw krojów. Dla Computer Modern są +to np. <code>cmr</code>, <code>cmss</code>, <code>cmtt</code>. Dla krojów +postscriptowych stosuje się zwykle trzy pierwsze znaki nazwy plikowej fontu +wg. konwencji Karla Berry. Na przykład <code>ptm</code> to Adobe Times, +<code>phv</code> to Adobe Helvetica, a <code>bch</code> to Bitstream +Charter. Tych nazw używa się jako argumentu <code>\fonfamily</code>.</p> + +<p> + Dla osób po raz pierwszy stykających się z NFSS trudność stanowi zwykle +zrozumienie zależności między rodziną a układem fontu. I tak na +przykład krój Computer Modern Roman (<code>cmr</code>) występuje co najmniej +w trzech układach. Krój <code>cmr</code> w starym układzie +tekstowym <code>OT1</code> jest dostępny w oryginalnych fontach Knutha +o nazwach plikowych np. <code>cmr10</code>, <code>cmbx12</code>, +<code>cmti9</code>, itd. Krój <code>cmr</code> w układzie polskim +<code>OT4</code> jest realizowany przez adaptację fontów Knutha, dokonaną +przez B. Jackowskiego i M. Ryćko. Nazwy plikowe tych fontów +to np. <code>plr10</code>, <code>plbx12</code>, <code>plti9</code>. Trzecim +układem, w którym dostępny jest krój <code>cmr</code>, jest nowy +,,europejski'' układ tekstowy <code>T1</code>. Ta kombinacja parametrów +oznacza użycie fontów EC (Extended Computer Modern), czyli plików metrycznych +np. <code>ecr1000</code>, <code>ecbx1200</code>, <code>ecti0900</code>.</p> + +<p> + Fonty Knutha oprócz rodziny Computer Modern Roman obejmują jeszcze +rodzinę Computer Modern Sans Serif (<code>cmss</code>), Computer Modern +Typewriter (<code>cmtt</code>) i kilka drobnych +eksperymentalno-dekoracyjno-zabawowych, jak Computer Modern Funny Roman +(<code>cmff</code>), Computer Modern Dunhill Roman (<code>cmdh</code>), +Computer Modern Fibonacci Roman (<code>cmfib</code>). +</p> + +<p> + Zatem wybór spośród fontów CM, PL czy EC, odbywa się +poprzez zmianę używanego układu, a nie rodziny, bo wszystkie one +zawierają rodziny <code>cmr</code>, <code>cmss</code> i <code>cmtt</code> -- +znaki występujące w każdym z tych fontów mają w zasadzie ten sam +projekt graficzny, jedynie zestaw dostępnych znaków jest różny. +</p> + +<p> + Przełączenie standardowego LaTeXa na fonty zawierające polskie znaki +diakrytyczne, polega na zmianie używanego układu fontów na <code>OT4</code> +lub <code>T1</code>. Od tego momentu odwołania do standardowych rodzin +fontów będą dotyczyły fontów zawierających polskie znaki. +</p> + +<p> + Krojów pisma nie trzeba deklarować. LaTeX załaduje odpowiednie informacje +przy pierwszym odwołaniu do danego kroju.</p> + +<A NAME="grub"> +<b>Grubość i szerokość.</b><br> +Oto najczęściej spotykane wartości tego parametru: + +<TABLE FRAME=1 WIDTH=40% ALIGN=center> +<td> m </td><td> <em>medium</em> </td><td> zwykły </td><tr> +<td> b </td><td> <em>bold</em> </td><td> gruby </td><tr> +<td> bx </td><td> <em>bold extended</em> </td><td> gruby szeroki </td><tr> +<td> sb </td><td> <em>semi-bold</em> </td><td> półgruby </td><tr> +<td> c </td><td> <em>condensed</em> </td><td> wąski </td><tr> +</TABLE> + +<p> + W ogólności grubość i szerokość mogą przebiegać kilkustopniową +skalę, dając kilkanaście kombinacji opisanych dwuliterowymi kodami. +Większość krojów występuje jednak tylko w dwóch lub trzech wersjach +grubości/szerokości. </p> + +<A NAME="odmiana"> +<b>Odmiana.</b><br> +Najczęściej dostępne odmiany to:<p> + +<TABLE FRAME=1 WIDTH=50% ALIGN=center> +<td> n </td><td> <em>normal</em> </td><td> prosta </td><tr> +<td> it </td><td> <em>italic</em> </td><td> kursywa </td><tr> +<td> sl </td><td> <em>slanted</em> </td><td> pochyła </td><tr> +<td> sc </td><td> <em>small caps</em> </td><td> kapitaliki </td><tr> +<td> ui </td><td> <em>upright italic</em> </td><td> ,,wyprostowana'' kursywa </td><tr> +</TABLE> + +<A NAME="stoppis"> + <b>Stopień pisma i interlinia.</b><br> Argumentami polecenia +<code>\fontsize</code> są stopień pisma i interlinia. Domyślną +jednostką są punkty (amerykańskie), ale w każdym z argumentów można +też użyć dowolnej jednostki akceptowanej przez TeXa. +</p> + +<p> + W TeXu interlinia jest stała dla całego akapitu. Mówiąc ściślej, +w całym akapicie zostanie użyta jej wartość bieżąca na jego końcu.</p> + +<A NAME="obsluga"> +<h3>Obsługa typowych sytuacji</h3> + +<p> + Opisany powyżej sposób manipulowania fontami pozwala na dostęp do wszystkich +zainstalowanych fontów rodziny, ale jest uciążliwy. Dlatego LaTeX ma serię +poleceń (definiowanych po części przez klasy) obsługujących typowe sytuacje. +</p> + +<p> + Po pierwsze, mamy serię poleceń wybierających stopień pisma +i interlinię, które występowały również w LaTeXu 2.09. +Poniższa tabela wymienia stopnie odpowiadające poszczególnym poleceniom, +w zależności od stopnia pisma tekstu podstawowego wybranego +w <code>\documentclass</code>. +</p> + +<TABLE WIDTH=60% ALIGN=center> +<td> stopień pisma </td><td> </td><td> </td><td> </td><tr> +<td> tekstu głównego </td><td> 10pt </td><td> 11pt </td><td> 12pt </td><tr> +<td> <code>\tiny</code> </td><td> 5pt </td><td> 6pt </td><td> 6pt </td><tr> +<td> <code>\scriptsize</code> </td><td> 7pt </td><td> 8pt </td><td> 8pt </td><tr> +<td> <code>\footnotesize</code> </td><td> 8pt </td><td> 9pt </td><td> 10pt </td><tr> +<td> <code>\small</code> </td><td> 9pt </td><td> 10pt </td><td> 11pt </td><tr> +<td> <code>\normalsize</code> </td><td> 10pt </td><td> 11pt </td><td> 12pt </td><tr> +<td> <code>\large</code> </td><td> 12pt </td><td> 12pt </td><td> 14pt </td><tr> +<td> <code>\Large</code> </td><td> 14pt </td><td> 14pt </td><td> 17pt </td><tr> +<td> <code>\LARGE</code> </td><td> 17pt </td><td> 17pt </td><td> 20pt </td><tr> +<td> <code>\huge</code> </td><td> 20pt </td><td> 20pt </td><td> 25pt </td><tr> +<td> <code>\Huge</code> </td><td> 25pt </td><td> 25pt </td><td> 25pt </td><tr> +</TABLE> + +<p> + Zostały również zachowane polecenia LaTeXa 2.09 <code>\rm</code>, +<code>\bf</code>, <code>\it</code>, <code>\sl</code>, <code>\sc</code>, +<code>\ss</code> i <code>\tt</code>. Ale uwaga: zachowują +się one dokładnie tak jak w LaTeXu 2.09 -- nie da się na przykład +przy ich pomocy uzyskać grubej kursywy. +</p> + +<p> + Nowy zestaw poleceń posługuje się następującym modelem użycia fontów +w dokumencie. Ponieważ mieszanie różnych krojów szeryfowych +w jednym dokumencie w zasadzie jest błędem (a przynajmniej +powinno być wynikiem przemyślanej decyzji), w schemacie przyjętym przez +standardowe klasy dokumentów dostępny jest jeden krój szeryfowy, jeden +bezszeryfowy i jeden grotesk. Oczywiście domyślnie są to Computer +Modern Roman, Computer Modern Sansserif i Computer Modern Typewriter. +</p> + +<p> +Oto podstawowe polecenia wyboru krojów i odmian w tym +schemacie:</p> + +<TABLE FRAME=1 WIDTH=50% ALIGN=center> +<td> <b>Krój pisma (rodzina)</b> </td><tr> +<td> <code>\textrm{...}</code> lub <code>\rmfamily</code> </td><td> + krój szeryfowy </td><tr> +<td> <code>\textsf{...}</code> lub <code>\sffamily</code> </td><td> + krój bezszeryfowy </td><tr> +<td> <code>\texttt{...}</code> lub <code>\ttfamily</code> </td><td> + grotesk </td><tr> +<td> <b>Grubość i szerokość pisma</b> </td><tr> +<td> <code>\textmd{...}</code> lub <code>\mdseries</code> </td><td> pismo jasne</td><tr> +<td> <code>\textbf{...}</code> lub <code>\bfseries</code> </td><td> pismo grube</td><tr> +<td> <b>Odmiana pisma</b> </td><tr> +<td> <code>\textup{...}</code> lub <code>\upshape</code> </td><td> odmiana prosta</td><tr> +<td> <code>\textit{...}</code> lub <code>\itshape</code> </td><td> kursywa </td><tr> +<td> <code>\textsl{...}</code> lub <code>\slshape</code> </td><td> odmiana pochyła </td><tr> +<td> <code>\textsc{...}</code> lub <code>\scshape</code> </td><td> kapitaliki </td><tr> +</TABLE> + +<p> + Jak widać, tworzą one pary poleceń o podobnej funkcjonalności. Wersje +z argumentem składają ten argument pismem wybranym przez swój +odpowiednik bez argumentu. Ponadto polecenia te na granicy między pismem +pochyłym a prostym dodają kompensatę wychylenia ostatniego znaku +(<em>italic correction</em>), chyba że następnym znakiem jest kropka lub +przecinek i kompensata nie jest potrzebna. +</p> + +<p> + Polecenia bez argumentów można sobie wyobrażać jako zdefiniowane wg +schematu:</p> +<pre><code> +\newcommand\rmfamily{ + \fontfamily{\rmdefault}\selectfont} +</code></pre> +<p> + One również nie mają zaszytej w sobie nazwy rodziny, odmiany, grubości, +ale odwołują się do makr przechowujących wartości domyślne. Oczywiście +domyślną wartością makra <code>\rmdefault</code> jest <code>cmr</code>, czyli +polecenie <code>\rmfamily</code> domyślnie włącza krój Computer Modern Roman. +</p> + +<p> + Stąd płynie wniosek, że aby w LaTeXu złożyć dokument, używając jako +kroju szeryfowego Timesa, wystarczy:</p> +<code> +\renewcommand\rmdefault{ptm} +</code> +<p> + (Polecenia zapożyczone z LaTeXa 2.09 działają w podobny, +pośredni sposób, więc również konsekwentnie poddają się takiemu +przedefiniowaniu.) </p> + +<p> +Wartości domyślne wkraczają jeszcze w kilku innych miejscach.</p> + +<p> +Zasadnicza treść dokumentu jest składana fontem uaktywnianym +poleceniem <code>\normalfont</code>. Jest ono mniej więcej równoważne +<pre><code> +\usefont{\encodingdefault} + {\familydefault} + {\seriesdefault}{\shapedefault} +</code></pre> + +Płyną z tego ciekawe wnioski: </p> + +<p> + 1) Zmieniając wartość <code>\encodingdefault</code> na <code>OT4</code> +możemy sprawić, że dokument będzie składany polskimi fontami. Pakiet +<code>polski</code> tak właśnie postępuje, przełączając układ na +<code>OT4</code> lub <code>T1</code> w zależności od opcji. </p> + +<p> + 2) Standardową wartością <code>\familydefault</code> jest <code>\rmdefault</code>. +Skład całego dokumentu czcionką bezszeryfową można uzyskać zmieniając +tę wartość na <code>\sfdefault</code>: </p> +<code> +\renewcommand\familydefault{\sfdefault} +</code> +<p> +Tego rodzaju zmian należy dokonywać w preambule dokumentu (to jest +przed <code>\begin{document}</code>).</p> + +<A NAME="konfig"> +<h3>Konfigurowanie NFSS</h3> + +<p> + Pozostaje jeszcze odpowiedzieć na pytanie, skąd NFSS ,,wie'', jakie kroje, +odmiany i stopnie pisma są dostępne i w jakich układach.</p> + +<p> +Deklaracja układów fontów powoduje, że LaTeX ładuje pliki opisujące dane +układy. Np. dla układu <code>OT4</code> będzie to plik +<code>ot4enc.def</code> (Uwaga: od grudnia 1996 nazwy wszystkich plików +w dystrybucji LaTeXa są pisane tylko małymi literami. Fakt ten wywołał +niejakie zamieszanie, ale wydaje się, że na dłuższą metę jest to decyzja +rozsądna.) W tym pliku zawarte są informacje, jakie akcenty są dostępne +w danym układzie, w jakich pozycjach się one znajdują i jakie +są dostępne znaki akcentowane (kombinacje akcent-litera). +</p> + +<p> +Pakiet <code>polski.sty</code> wewnętrznie ładuje odpowiednią definicję +układu.</p> + +<p> + Opisy krojów są ładowane automatycznie z plików <code>.fd</code> przy +pierwszej próbie użycia fontu z danej rodziny w danym układzie. Na +przykład po zadeklarowaniu jako domyślnego układu <code>OT4</code>, pierwsza +próba włączenia fontu z rodziny <code>cmr</code> spowoduje, że LaTeX +załaduje plik <code>ot4cmr.fd</code>. Oto fragment tego pliku:</p> + +<pre><code> +\DeclareFontFamily{OT4}{cmr}{} +\DeclareFontShape{OT4}{cmr}{m}{n} + { <5> <6> <7> <8> + <9> <10> <12> gen * plr + <10.95> plr10 + <14.4> plr12 + <17.28><20.74><24.88>plr17}{} +... +\DeclareFontShape{OT4}{cmr}{bx}{it} + { <-10>sub * cmr/bx/n + <10> <10.95> <12> <14.4> <17.28> + <20.74> <24.88> plbxti10 + }{} +... +</code></pre> + +<p> + Pierwsza deklaracja powiadamia, że jest to opis rodziny <code>cmr</code> +w układzie <code>OT4</code>. Dalej następuje ciąg deklaracji +<code>\DeclareFontShape</code> opisujących poszczególne kombinacje +rodzina/grubość/odmiana. Pierwsza opisuje odmianę jasną +(<code>m</code> <em>medium</em>), prostą +(<code>n</code> <em>normal</em>) -- dla stopni 5, 6, 7, 8, 9, 10 +i 12 należy użyć fontu o nazwie plikowej powstającej z ciągu +<code>plr</code> po dołączeniu doń liczby stopnia pisma. Dla stopnia 10.95pt +należy użyć fontu <code>plr10 at 10.95pt</code>, podobnie dla stopni 14.4, +17.28, 20.74, 24.88 użyty zostanie odpowiednio zeskalowany font +<code>plr12</code> i <code>plr17</code>. Druga klauzula +<code>\DeclareFontShape</code> opisuje grubą (<code>bx</code> <em>bold +extended</em>) kursywę (<code>it</code> <em>italic</em>) -- dla stopni +mniejszych od 10pt należy użyć w zastępstwie grubej prostej odmiany +rodziny <code>cmr</code>. Dla wymienionych dalej stopni użyty zostanie +odpowiednio zeskalowany font <code>plbxti10</code>. </p> + +<p> + Deklaracje układów <code>OT1</code> i <code>T1</code> oraz opis rodziny +<code>cmr</code> w tych układach są wbudowywane w format razem +z plikami metrycznymi podstawowych fontów. Służy to przyspieszeniu +ładowania LaTeXa na początku przetwarzania dokumentu. Zestaw wbudowanych +układów, rodzin i plików metrycznych można zmienić przy pomocy plików +konfiguracyjnych <code>fonttext.cfg</code> i <code>preload.cfg</code> -- +szczegóły opisano w dokumencie <code>cfgguide.tex</code>. </p> + +<p> + Aby można było powiedzieć, że font jest zainstalowany w LaTeXu musi +istnieć dla niego definicja układu i definicja kroju (rodziny) +w tym układzie. Układów w zasadzie jest skończona niewielka liczba +i definicje większości z nich są zawarte w dystrybucji LaTeXa +(w tym <code>OT4</code>). Natomiast dla każdego kroju potrzebny jest +jego opis w pliku o nazwie zbudowanej z nazwy układu +i nazwy rodziny z rozszerzeniem <code>.fd</code> (wszystko małymi +literami). Pliki te muszą znajdować się w katalogu widocznym dla +LaTeXa. </p> + +<p> + Pliki opisu dla fontów PL i PC są zawarte w pakiecie PLaTeX. Pliki +opisu dla kroju Quasi Palladio (<code>qpl</code>), Quasi Times +(<code>qtm</code>) i antykwy toruńskiej (<code>antt</code>) są częścią +pakietu <code>pl-qx</code> Piotra Kłosowskiego. </p> + +<hr> +<i> Opracował: StaW (ostatnia modyfikacja 28.11.2000)</i> + +</body> +</html> + diff --git a/info/tex-virtual-academy-pl/fonty/qx-info.html b/info/tex-virtual-academy-pl/fonty/qx-info.html new file mode 100644 index 0000000000..eb32acfb07 --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/qx-info.html @@ -0,0 +1,447 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> +<head> +<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> +<meta name="keywords" lang="pl" content="Fonty, kodowanie QX"> +<meta name="keywords" lang="en" content="Computer fonts, QX encoding"> +<LINK REL=STYLESHEET TYPE="text/css" HREF="./tpstyle.css"> +<title> Kodowanie QX</title> +</head> +<body> +<h1> Kodowanie QX</h1> +Wiosną 1998 roku pojawiła się w archiwum GUST-u polonizacja fontu +Palatino, pochodzącego z kolekcji fontów URW, dystrybuowanej od +jakiegoś czasu z Ghostscriptem. Znaki w spolonizowanym +foncie mają kodowanie zgodne z tzw. układem <acro>QX</acro>. Co +to takiego, ten układ <acro>QX</acro>? +</P> +<P> +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. +</P> +<P> +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. +</P> +<P> +Efektem prac jest właśnie układ <acro>QX</acro> określający dla fontów +<acro>PostScriptowych</acro>-owych zarówno zestaw znaków, jak +i tabele kodów do zastosowań okienkowych oraz do zastosowań +TeX-owych, gdyż w zamierzeniu układ <acro>QX</acro> ma zaspokajać +potrzeby składu TeXnicznego, z możliwością (ograniczonego) +wykorzystywania fontów w środowisku okienkowym. +</P> + +<h3> Założenia </h3> + +<P> Układ <acro>QX</acro> nie wziął się ,,z głowy czyli +z niczego'' -- przeciwnie, wynikł z przyjętych zasad. Zasady +mogą się okazać chybione, to pokaże czas, niemniej jednak najpierw +sformułowane zostały zasady, a na ich podstawie konstruowany był +układ <acro>QX</acro>. +</P> +<P> +Oto najważniejsze z tych zasad: +</P> + +<ul><A NAME="P0"> +<li><A HREF=#P1>Fonty w miarę możności powinny +mieć identyczny układ znaków</A>. +<li><A HREF=#P2>Fonty mają być przeznaczone do używania w TeX-u</A>. +<li><A HREF=#P3>Fonty mają być przeznaczone do składania +przede wszystkim polskich tekstów</A>. +<li><A HREF=#P4>Fonty mają się nadawać do składania tekstów technicznych</A>. +<li><A HREF=#P5>Fonty mają się nadawać do składania tekstów zawierających +fragmenty w językach europejskich, ze szczególnym uwzględnieniem krajów +sąsiadujących z Polską</A>. +<li><A HREF=#P6>Fonty powinny być samowystarczalne</A> +(chodzi o to, by znaków dodatkowych, takich jak <i>copyright</i>, +<i>trademark</i>, <i>bullet</i>, itp., nie trzeba było czerpać +z innych fontów). +<li><A HREF=#P7>Fonty mają być używalne w środowisku MS Windows</A>, +w szczególności w polskiej wersji środowiska. +</ul> + +<!-- ------------------------------------------------------ --> +<A NAME="P1"><h3> Ad 1</h3> + +<P> +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. +</P> +<P> +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 <code>cmr5</code> ma nieco inny zestaw znaków niż +pozostałe fonty szeregu <code>CMR</code> -- 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. +</P> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis założeń</A></P> + +<A NAME="P2"><h3> Ad 2</h3> +<P> +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 <acro>QX</acro>. Kolejnym ograniczeniem jest limit różnych +wysokości i głębokości znaków w foncie (16), w związku +z czym znaki w danym foncie nie powinny się zbyt różnić +rozmiarami. +</P> + +<P> +Ze względu na powszechność fontów <acro>CM</acro> zestaw znaków powinien +być możliwe zgodny z zestawem znaków fontów tekstowych rodziny +<acro>CM</acro> (fonty matematyczne, jako używalne wyłącznie w kontekście +TeX-a, pozostają poza zakresem zainteresowań). +</P> + +<P> Podobna zasada była ściśle przestrzegana przy projektowaniu +pakietu MeX: fonty <acro>PL</acro> +i fonty <acro>CM</acro> różnią się jedynie znakami +o kodach 128--255 (polskie znaki diakrytyczne +i cudzysłowy). Dzięki temu każde oprogramowanie TeX-owe +przeznaczone do pracy z fontami <acro>CM</acro> działa +również z fontami <acro>PL</acro>, co okazało się +w praktyce bardzo korzystne. </P> + +Podjęcie takiej decyzji stało niestety w sprzeczności +z ustaleniami konferencji EuroTeX'90 w Cork (Irlandia), +gdzie przyjęty został jako ,,nowy standard'' +tzw. układ <acro>EC</acro>. Z grubsza rzecz biorąc +w układzie <acro>EC</acro> znaki diakrytyczne umieszczone są +w pozycjach o kodach 0--32, a narodowe znaki +diakrytyczne w pozycjach o kodach 128--256 +(w układzie <acro>PL</acro> pozycje polskich znaków +diakrytycznych są takie same jak +w układzie <acro>EC</acro>). + +Niezależnie od zalet takiego systemu kodowania użycie +fontów <acro>EC</acro> z formatem plain jest po prostu +niemożliwe. Ponadto pula stu dwudziestu ośmiu pozycji na znaki +diakrytyczne okazała się zbyt mała. Nie zmieściły się na przykład +litewskie litery ,,<i class=glyph>iogonek</i>'', ,,<i +class=glyph>Iogonek</i>'', ,,<i class=glyph>uogonek</i>'' +oraz ,,<i class=glyph>Uogonek</i>''. + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis założeń</A></P> + +<A NAME="P3"><h3> Ad 3 </h3> + +<P> +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 <acro>PL</acro>, możliwie mało +różniącym się od układu <acro>EC</acro>. W szczególności +oznacza to, że wszystkie polskie znaki diakrytyczne powinny się +w foncie znaleźć. +</P> +<P> +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 +<A HREF=#P4>zasady 4</A>. +</P> +<P> +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'' (poprawna nazwa w wektorze kodowania to <code>f_k</code>). +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: <i>agrafka</i>, <i>cofka</i>, +<i>dryfkotwa</i>, <i>fifka</i>, <i>Kafka</i>, <i>karafka</i>, +<i>lufka</i>, <i>mufka</i>, <i>sofka</i>, <i>szafka</i>. 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 <acro>QX</acro>. +</P> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis założeń</A></P> + +<A NAME="P4"><h3>Ad 4</h3> + +Zastosowanie TeX-a do składania tekstów sugeruje pewien zakres +zastosowań, mianowicie skład tekstów technicznych. Fonty zatem powinny +posiadać znaki przydatne do takich zastosowań. Pośród wielu znaków +specyficznych dla polskich zwyczajów typograficznych dwa wydają się +szczególnie ważne: symbol kąta ,,<i class=glyph>anglearc</i>'', +oraz symbol średnicy ,,<i class=glyph>diameter</i>''. Znaków +tych, o ile nam wiadomo, nie posiada żaden font pochodzenia +zagranicznego. Również polskie znaki mniejsze-równe +i większe-równe, ,,<i class=glyph>lessequal</i>'' ,,<i +class=glyph>greaterequal</i>'', różnią się od symboli stosowanych za +granicą. +</P> + +W tekstach technicznych często pojawia się promil ,,<i +class=glyph>perthousand</i>''. Rzecz dziwna, Donald E. Knuth +nie przyjął do wiadomości istnienia tego znaku -- +w fontach <acro>CM</acro> po prostu go nie ma. +</P> +<P> +Z punktu widzenia tekstów technicznych pożądana jest obecność +niektórych małych greckich liter +w foncie. Np. litera <i class=glyph>mu</i> pojawia się +w oznaczeniach jednostek (przedrostek mikro). Litera <i +class=glyph>pi</i> 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ść. +</P> +<P> +Jako jednostki używane są czasem symbole <i +class=glyph>quotesingle</i> (minuta), <i +class=glyph>quotedbl</i> (sekunda lub cal), <i +class=glyph>degree</i> (stopień) -- ich brak wcześniej czy +później zaczyna dokuczać. +</P> + +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 <i +class=glyph>section</i> w standardowych +fontach <acro>CM</acro> (symbol ten występuje jedynie +w fontach szeregu <code>CMSY</code>) dawał się dotkliwie odczuć +w praktyce. +</P> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis założeń</A></P> + +<A NAME="P5"><h3> Ad 5</h3> + +Większość znaków diakrytycznych daje się uzyskać za pomocą operacji +TeX-owych, na ogół za pomocą polecenia <code>\accent</code>. 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. +</P> + +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 (,,ą'', ,,ę'', <i +class=glyph>iogonek</i>, <i class=glyph>uogonek</i> +i odpowiednie majuskuły) oraz litery z cedillą (<i +class=glyph>ccedilla</i>, <i class=glyph>scedilla</i>, <i +class=glyph>tcedilla</i> i odpowiednie majuskuły). Inne znaki +diakrytyczne tego rodzaju to islandzkie <i class=glyph>thorn</i>, <i +class=glyph>Thorn</i> czy <i class=glyph>eth</i>. W dobrze +zaprojektowanych fontach takie znaki nie mogą być ,,składanką'' -- +muszą stanowić spójnie zaprojektowaną całość. +</P> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis założeń</A></P> + +<A NAME="P6"><h3>Ad 6</h3> +<P> +Font powinien zawierać pewne ,,uświęcone tradycją'' znaki +dodatkowe. Takie symbole jak ,,<i class=glyph>copyright</i>'' czy ,,<i +class=glyph>registered</i>'' 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 <code>\copyright</code>, 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. +</P> +<P> +Symbole ,,<i class=glyph>dagger</i>'' i ,,<i +class=glyph>daggerdbl</i>'' 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ć. +</P> + +Inne symbole potrzebne sporadycznie to ,,<i class=glyph>bullet</i>'' +i ,,<i class=glyph>periodcentered</i>''. 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. +</P> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis założeń</A></P> + +<A NAME="P7"><h3>Ad 7</h3> +<P> +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 <acro>QX</acro> przeznaczonym do +zastosowań okienkowych kody mniejsze-równe od 32 otrzymały znaki, co +do których można ze sporym prawdopodobieństwem założyć, że nie będą +potrzebne w tych zastosowaniach (głównie akcenty, symbole +i ligatury -- p. <a +href="qx-table2.html">tabela 2</a>). +</P> +<P> +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. ,,<i class=glyph>paragraph</i>'', używany jako +znak końca akapitu w niektórych edytorach tekstu pracujących +w środowisku MS Windows. Do podobnego celu wykorzystywany bywa +znak ,,<i class=glyph>currency</i>''. +</P> + +Pewne aplikacje windowsowe spodziewają się znaleźć pod kodami 32 +i 160 odpowiednio odstęp (<code>space</code>) i niełamliwy +odstęp (<code>nbspace</code>). Są to znaki absolutnie bezużyteczne +z punktu widzenia TeX-a, ale nieusuwalne ze względu na windowsowe +tradycje. +</P> + +<P><A HREF=#P0><IMG ALIGN="BOTTOM" SRC="back.gif"> Spis założeń</A></P> + +<h3>Ligatury i kerny</h3> + +<P> +Specyfikacja układu <acro>QX</acro> w kontekście zastosowań +TeX-owych obejmuje także ligatury. Ligatury to ważny choć praktycznie +pomijany (z nie do końca jasnych przyczyn) w świecie +nieTeX-owym element definicji fontu. +</P> +<P> +Od wersji 0.03 układ QX uwzględnia następujące ligatury: +</P> + +<table align=center> +<tr bgcolor="yellow"><td> f + f </td><td> ff</tr> +<tr><td> f + i </td><td> fi</tr> +<tr bgcolor="yellow"><td> f + l </td><td> fl</tr> +<tr><td> f + k </td><td> f_k</tr> +<tr bgcolor="yellow"><td> ff + i </td><td> ffi</tr> +<tr><td> ff + l </td><td> ffl</tr> +<tr bgcolor="yellow"><td> hyphen + hyphen </td><td> endash</tr> +<tr><td> endash + hyphen </td><td> emdash</tr> +<tr bgcolor="yellow"><td> quoteleft + quoteleft </td><td> quotedblleft</tr> +<tr><td> quoteright + quoteright </td><td> quotedblright</tr> +<tr bgcolor="yellow"><td> comma + comma </td><td> quotedblbase</tr> +<tr><td> exclam + quoteleft </td><td> exclamdown</tr> +<tr bgcolor="yellow"><td> question + quoteleft </td><td> questiondown</tr> +<tr><td> exclamdown + exclamdown </td><td> guillemotleft</tr> +<tr bgcolor="yellow"><td> questiondown + questiondown </td><td> guillemotright</tr> +</table> + +<P> +Z dokładnością do ligatury ,,fk'' jest to ten sam zestaw ligatur +co w fontach <acro>PL</acro>, natomiast różni się on od +zestawu ligatur zaproponowanego dla układu <acro>EC</acro>, który +obejmował m.in.: +</P> + +<table align=center> +<tr bgcolor="yellow"><td> space + l </td><td> lslash</tr> +<tr><td> space + L </td><td> Lslash</tr> +<tr bgcolor="yellow"><td> percent + percent </td><td> perthousand</tr> +<tr><td> less + less </td><td> guillemotleft</tr> +<tr bgcolor="yellow"><td> greater + greater </td><td> guillemotright</tr> +</table> + +<P> +Pierwsze trzy z tych ligatur wydają się nieuzasadnione, dwie +pozostałe są nieadekwatne, ze względu na zachowanie +w układzie <acro>QX</acro> konwencji fontów <acro>CM</acro> +umieszczającej hiszpańskie znaki interpunkcyjne w pozycji znaku +<i class=glyph>less</i> (znak ,,<'') oraz <i +class=glyph>greater</i> (znak ,,>''). +</P> +<P> +W definicji układu <acro>QX</acro> zestaw par kernowych nie jest +w żaden sposób specyfikowany, w szczególności dopuszczalne +są -- nieobecne w układzie <acro>EC</acro> -- kerny między +cyframi. +</P> + +<h3>Zmiany wprowadzone do układu QX wer. 0.05 (14.01.2002)</h3> + +Po długiej debacie znaki [tT]cedilla (niewykorzystywane w żadnym +z europejskich języków, ale z niezrozumiałych przyczyn obecne +w wielu fontach) zostały w wersji 0.04 układu QX zastąpione przez +rumuńskie znaki [tT]commaaccent. Konsekwentnie tureckie znaki [sS]cedilla +zostały zastąpione przez rumuńskie znaki [sS]commaaccent, aczkolwiek zalecane +jest pozostawienie definicji obwiedni znaków [sS]cedilla w foncie. + +Wprowadzenie waluty euro spowodowało dodanie symbolu Euro do układu QX +(wer. 0.05). Symbolowi temu został przypisany kod 128 zarówno +w kodowaniu dla systemu TeX, jak i Windows, co jest zgodne +z zaleceniem Microsoftu (patrz +<a href="http://www.microsoft.com/typography/faq/faq12.htm">faq12.htm</a>): + +<p><small> +The symbol has been added to the following codepages at position + '0x80'; 1250 Eastern European, 1252 Western, 1253 Greek, 1254 Turkish, + 1257 Baltic, 1255 Hebrew, 1256 Arabic, 1258 Vietnamese, 874 Thai. + In 1251 Cyrillic the symbol will be added at position '0x88'. +</p></small> + +Niestety skutkiem tego rozszerzenia była konieczność wprowadzenia dalszych +zmian w kodowaniu QX dla systemu Windows: litewskie znaki [Ii]ogonek +otrzymały kody 222 i 254 (uprzednio 128 i 144); znaki [Tt]horn, +mające przedtem te kody, zostały usunięte. Zalecane jest pozostawienie +definicji kształtów znaków [Tt]horn w foncie. + +Przy okazji zmian wprowadzona została nazwa <code>f_k</code> dla +(niestandardowej) ligatury ,,fk'', zgodnie z zaleceniem Adobe: +<a href="http://partners.adobe.com/asn/developer/typeforum/unicodegn.html">unicodegn.html</a> + +<h3>Zmiany wprowadzone do układu QX wer. 0.06 (24.08.2003)</h3> + +Dodano ligatury ij, IJ (dostępne tylko w TeX-owym kodowaniu) oraz +znak interpunkcyjny <em>threequartersemdash</em>.<p> + +<A NAME="P9"><h3>Tabele układu QX</h3> + +<P> +Na dwóch kolejnych stronach zamieszczamy porównanie aktualnego układu +<acro>QX</acro> (wer. 0.06) z innymi szeroko używanymi +układami znaków. <A HREF="qx-table1.html">Tabela 1</A> +przedstawia porównanie TeX-owych układów -- układu <acro>PL</acro> +(przypomnijmy, że znaki o kodach mniejszych-równych od 127 są +identyczne w układzie <acro>PL</acro> i w układzie +<acro>CM</acro>), układu <acro>EC</acro> oraz +układu <acro>QX</acro>. Z kolei <A +HREF="qx-table2.html">tabela 2</A> przedstawia porównanie układu +<acro>QX</acro> przeznaczonego do zastosowań windowsowych +z układem CP 1250 oraz macintoshowym <acro>PLEURO</acro>. +Jeżeli chodzi o układ <acro>QX</acro> to -- rzecz jasna -- +w obu tabelach występuje ten sam zestaw znaków, różnice dotyczą +jedynie kodów przypisanych poszczególnym znakom. +</P> + +<P><i> Tekst jest zaktualizowaną wersją artykułu z Biuletynu GUST, +nr 9/1997, s. 28--30.</i><BR> +<i>Ostatnia modyfikacja 13.09.2004</i> (StaW)</P> + +<hr> +<A HREF="index.html#infod"><IMG +ALIGN="BOTTOM" SRC="back.gif">Powrót</A> + +</P> +</body> +</html> diff --git a/info/tex-virtual-academy-pl/fonty/qx-table1.html b/info/tex-virtual-academy-pl/fonty/qx-table1.html new file mode 100644 index 0000000000..b4ca96a6f9 --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/qx-table1.html @@ -0,0 +1,280 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> +<head> +<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> +<meta name="keywords" lang="pl" content="Fonty, kodowanie QX"> +<meta name="keywords" lang="en" content="Computer fonts, QX encoding"> +<title> Kodowanie QX</title> +</head> +<body> +<h3>Tabela 1. Układ QX wer. 0.06 -- zastosowania TeX-owe -- porównanie z układem + <acro>CM</acro>, <acro>EC</acro> i <acro>PL</acro></h3> +<table align=center> +<tr bgcolor="yellow"><td>code</td> <td>CM</td> <td>EC</td> <td>PL</td> +<td> QX ver. 0.06</td></tr> +<tr><td>0</td><td> Gamma</td><td> grave</td> <td>Gamma</td><td>alpha </td></tr> +<tr bgcolor="yellow"><td>1</td><td> Delta</td><td>acute</td><td>Delta</td> +<td>Delta</td></tr> +<tr><td>2</td><td> Theta</td><td>circumflex</td><td>Theta</td><td>beta</td></tr> +<tr bgcolor="yellow"><td>3</td><td>Lambda</td><td>tilde</td><td>Lambda</td><td>delta</td></tr> +<tr><td>4</td><td>Xi</td><td>dieresis</td><td>Xi</td><td>pi</td></tr> +<tr bgcolor="yellow"><td>5</td><td>Pi</td><td>hungarumlaut</td><td>Pi</td><td>Pi</td></tr> +<tr><td>6</td><td>Sigma</td><td>ring</td><td>Sigma</td><td>Sigma</td></tr> +<tr bgcolor="yellow"><td>7</td><td>Upsilon</td><td>caron</td><td>Upsilon</td><td>mu</td></tr> +<td>8</td><td>Phi</td><td>breve</td><td>Phi</td><td>ellipsis</td></tr> +<tr bgcolor="yellow"><td>9</td><td>Psi</td><td>macron</td><td>Psi</td><td>f_k</td></tr> +<tr><td>10</td><td>Omega</td><td>dotaccent</td><td>Omega</td><td>Omega</td></tr> +<tr bgcolor="yellow"><td>11</td><td>ff</td><td>cedilla</td><td>ff</td><td>ff</td></tr> +<tr><td>12</td><td>fi</td><td>ogonek</td><td>fi</td><td>fi</td></tr> +<tr bgcolor="yellow"><td>13</td><td>fl</td><td>quotesinglbase</td><td>fl</td><td>fl</td></tr> +<tr><td>14</td><td>ffi</td><td>guilsinglleft</td><td>ffi</td><td>ffi</td></tr> +<tr bgcolor="yellow"><td>15</td><td>ffl</td><td>guilsinglright</td><td>ffl</td><td>ffl</td></tr> +<tr><td>16</td><td>dotlessi</td><td>quotedblleft</td><td>dotlessi</td><td>dotlessi</td></tr> +<tr bgcolor="yellow"><td>17</td><td>dotlessj</td><td>quotedblright</td><td>dotlessj</td><td>dotlessj</td></tr> +<tr><td>18</td><td>grave</td><td>quotedblbase</td><td>grave</td><td>grave</td></tr> +<tr bgcolor="yellow"><td>19</td><td>acute</td><td>guillemotleft</td><td>acute</td><td>acute</td></tr> +<tr><td>20</td><td>caron</td><td>guillemotright</td><td>caron</td><td>caron</td></tr> +<tr bgcolor="yellow"><td>21</td><td>breve</td><td>endash</td><td>breve</td><td>breve</td></tr> +<tr><td>22</td><td>macron</td><td>emdash</td><td>macron</td><td>macron</td></tr> +<tr bgcolor="yellow"><td>23</td><td>ring</td><td>compoundwordmark</td><td>ring</td><td>ring</td></tr> +<tr><td>24</td><td>cedilla</td><td>perthousand</td><td>cedilla</td><td>cedilla</td></tr> +<tr bgcolor="yellow"><td>25</td><td>germandbls</td><td>dotlessi</td><td>germandbls</td><td>germandbls</td></tr> +<tr><td>26</td><td>ae</td><td>dotlessj</td><td>ae</td><td>ae</td></tr> +<tr bgcolor="yellow"><td>27</td><td>oe</td><td>ff</td><td>oe</td><td>oe</td></tr> +<tr><td>28</td><td>oslash</td><td>fi</td><td>oslash</td><td>oslash</td></tr> +<tr bgcolor="yellow"><td>29</td><td>AE</td><td>fl</td><td>AE</td><td>AE</td></tr> +<tr><td>30</td><td>OE</td><td>ffi</td><td>OE</td><td>OE</td></tr> +<tr bgcolor="yellow"><td>31</td><td>Oslash</td><td>ffl</td><td>Oslash</td><td>Oslash</td></tr> +<tr><td>32</td><td>suppress</td><td>visualspace</td><td>suppress</td><td>space</td></tr> +<tr bgcolor="yellow"><td>33</td><td>exclam</td><td>exclam</td><td>exclam</td><td>exclam</td></tr> +<tr><td>34</td><td>quotedblright</td><td>quotedbl</td><td>quotedblright</td><td>quotedblright</td></tr> +<tr bgcolor="yellow"><td>35</td><td>numbersign</td><td>numbersign</td><td>numbersign</td><td>numbersign</td></tr> +<tr><td>36</td><td>dollar</td><td>dollar</td><td>dollar</td><td>dollar</td></tr> +<tr bgcolor="yellow"><td>37</td><td>percent</td><td>percent</td><td>percent </td><td>percent</td></tr> +<tr><td>38</td><td>ampersand</td><td>ampersand</td><td>ampersand</td><td>ampersand</td></tr> +<tr bgcolor="yellow"><td>39</td><td>quoteright</td><td>quoteright</td><td>quoteright</td><td>quoteright</td></tr> +<tr><td>40</td><td>parenleft</td><td>parenleft</td><td>parenleft</td><td>parenleft</td></tr> +<tr bgcolor="yellow"><td>41</td><td> parenright</td><td>parenright</td><td>parenright</td><td>parenright</td></tr> +<tr><td>42</td><td>asterisk</td><td>asterisk</td><td>asterisk</td><td>asterisk</td></tr> +<tr bgcolor="yellow"><td>43</td><td>plus</td><td>plus</td><td>plus</td><td>plus</td></tr> +<tr><td>44</td><td>comma</td><td>comma</td><td>comma</td><td>comma</td></tr> +<tr bgcolor="yellow"><td>45</td><td>hyphen</td><td>hyphen</td><td>hyphen</td><td>hyphen</td></tr> +<tr><td>46</td><td>period</td><td>period</td><td>period</td><td>period</td></tr> +<tr bgcolor="yellow"><td>47</td><td>slash</td><td>slash</td><td>slash</td><td>slash</td></tr> +<tr><td>48</td><td>zero</td><td>zero</td><td>zero</td><td>zero</td></tr> +<tr bgcolor="yellow"><td>49</td><td>one</td><td>one</td><td>one</td><td>one</td></tr> +<tr><td>50</td><td> two</td><td>two</td><td>two</td><td>two</td></tr> +<tr bgcolor="yellow"><td> 51</td><td>three</td><td>three</td><td>three</td><td>three</td></tr> +<tr><td> 52 </td><td>four</td><td> four</td><td>four</td><td>four</td></tr> +<tr bgcolor="yellow"><td> 53</td><td>five</td><td> five</td><td>five</td><td>five</td></tr> +<tr><td>54</td><td>six</td><td>six</td><td>six</td><td>six</td></tr> +<tr bgcolor="yellow"><td>55</td><td>seven</td><td>seven</td><td>seven</td><td>seven</td></tr> +<tr><td>56</td><td>eight</td><td>eight</td><td>eight</td><td>eight</td></tr> +<tr bgcolor="yellow"><td>57</td><td>nine</td><td>nine</td><td>nine</td><td>nine</td></tr> +<tr><td>58</td><td>colon</td><td>colon</td><td>colon</td><td>colon</td></tr> +<tr bgcolor="yellow"><td>59</td><td>semicolon</td><td>semicolon</td><td>semicolon</td><td>semicolon</td></tr> +<tr><td>60</td><td>exclamdown</td><td>less</td><td>exclamdown</td><td>exclamdown</td></tr> +<tr bgcolor="yellow"><td>61</td><td>equal</td><td>equal</td><td>equal</td><td>equal</td></tr> +<tr><td>62</td><td>questiondown</td><td>greater</td><td>questiondown</td><td>questiondown</td></tr> +<tr bgcolor="yellow"><td>63</td><td>question</td><td>question</td><td>question</td><td>question</td></tr> +<tr><td>64</td><td>at</td><td>at</td><td>at</td><td>at</td></tr> +<tr bgcolor="yellow"><td>65</td><td>A</td><td>A</td><td>A</td><td>A</td></tr> +<tr><td>66</td><td>B</td><td>B</td><td>B</td><td>B</td></tr> +<tr bgcolor="yellow"><td>67</td><td>C</td><td>C</td><td>C</td><td>C</td></tr> +<tr><td>68</td><td>D</td><td>D</td><td>D</td><td>D</td></tr> +<tr bgcolor="yellow"><td>69</td><td>E</td><td>E</td><td>E</td><td>E</td></tr> +<tr><td>70</td><td>F</td><td>F</td><td>F</td><td>F</td></tr> +<tr bgcolor="yellow"><td>71</td><td>G</td><td>G</td><td>G</td><td>G</td></tr> +<tr><td>72</td><td>H</td><td>H</td><td>H</td><td>H</td></tr> +<tr bgcolor="yellow"><td>73</td><td>I</td><td>I</td><td>I</td><td>I</td></tr> +<tr><td>74</td><td>J</td><td>J</td><td>J</td><td>J</td></tr> +<tr bgcolor="yellow"><td>75</td><td>K</td><td>K</td><td>K</td><td>K</td></tr> +<tr><td>76</td><td>L</td><td>L</td><td>L</td><td>L</td></tr> +<tr bgcolor="yellow"><td>77</td><td>M</td><td>M</td><td>M</td><td>M</td></tr> +<tr><td>78</td><td>N</td><td>N</td><td>N</td><td>N</td></tr> +<tr bgcolor="yellow"><td>79</td><td>O</td><td>O</td><td>O</td><td>O</td></tr> +<tr><td>80</td><td>P</td><td>P</td><td>P</td><td>P</td></tr> +<tr bgcolor="yellow"><td>81</td><td>Q</td><td>Q</td><td>Q</td><td>Q</td></tr> +<tr><td>82</td><td>R</td><td>R</td><td>R</td><td>R</td></tr> +<tr bgcolor="yellow"><td>83</td><td>S</td><td>S</td><td>S</td><td>S</td></tr> +<tr><td>84</td><td>T</td><td>T</td><td>T</td><td>T</td></tr> +<tr bgcolor="yellow"><td>85</td><td>U</td><td>U</td><td>U</td><td>U</td></tr> +<tr><td>86</td><td>V</td><td>V</td><td>V</td><td>V</td></tr> +<tr bgcolor="yellow"><td>87</td><td>W</td><td>W</td><td>W</td><td>W</td></tr> +<tr><td>88</td><td>X</td><td>X</td><td>X</td><td>X</td></tr> +<tr bgcolor="yellow"><td>89</td><td>Y</td><td>Y</td><td>Y</td><td>Y</td></tr> +<tr><td>90</td><td>Z</td><td>Z</td><td>Z</td><td>Z</td></tr> +<tr bgcolor="yellow"><td>91</td><td>bracketleft</td><td>bracketleft</td><td>bracketleft</td><td>bracketleft</td></tr> +<tr><td>92</td><td>quotedblleft</td><td>backslash</td><td>quotedblleft</td><td>quotedblleft</td></tr> +<tr bgcolor="yellow"><td>93</td><td>bracketright</td><td>bracketright</td><td>bracketright</td><td>bracketright</td></tr> +<tr><td>94</td><td>circumflex</td><td>asciicircum</td><td>circumflex</td><td>circumflex</td></tr> +<tr bgcolor="yellow"><td>95</td><td>dotaccent</td><td>underscore</td><td>dotaccent</td><td>dotaccent</td></tr> +<tr><td>96</td><td>quoteleft</td><td>quoteleft</td><td>quoteleft</td><td>quoteleft</td></tr> +<tr bgcolor="yellow"><td>97</td><td>a</td><td>a</td><td>a</td><td>a</td></tr> +<tr><td>98</td><td>b</td><td>b</td><td>b</td><td>b</td></tr> +<tr bgcolor="yellow"><td>99</td><td>c</td><td>c</td><td>c</td><td>c</td></tr> +<tr><td>100</td><td>d</td><td>d</td><td>d</td><td>d</td></tr> +<tr bgcolor="yellow"><td>101</td><td>e</td><td>e</td><td>e</td><td>e</td></tr> +<tr><td>102</td><td>f</td><td>f</td><td>f</td><td>f</td></tr> +<tr bgcolor="yellow"><td>103</td><td>g</td><td>g</td><td>g</td><td>g</td></tr> +<tr><td>104</td><td>h</td><td>h</td><td>h</td><td>h</td></tr> +<tr bgcolor="yellow"><td>105</td><td>i</td><td>i</td><td>i</td><td>i</td></tr> +<tr><td>106</td><td>j</td><td>j</td><td>j</td><td>j</td></tr> +<tr bgcolor="yellow"><td>107</td><td>k</td><td>k</td><td>k</td><td>k</td></tr> +<tr><td>108</td><td>l</td><td>l</td><td>l</td><td>l</td></tr> +<tr bgcolor="yellow"><td>109</td><td>m</td><td>m</td><td>m</td><td>m</td></tr> +<tr><td>110</td><td>n</td><td>n</td><td>n</td><td>n</td></tr> +<tr bgcolor="yellow"><td>111</td><td>o</td><td>o</td><td>o</td><td>o</td></tr> +<tr><td>112</td><td>p</td><td>p</td><td>p</td><td>p</td></tr> +<tr bgcolor="yellow"><td>113</td><td>q</td><td>q</td><td>q</td><td>q</td></tr> +<tr><td>114</td><td>r</td><td>r</td><td>r</td><td>r</td></tr> +<tr bgcolor="yellow"><td>115</td><td>s</td><td>s</td><td>s</td><td>s</td></tr> +<tr><td>116</td><td>t</td><td>t</td><td>t</td><td>t</td></tr> +<tr bgcolor="yellow"><td>117</td><td>u</td><td>u</td><td>u</td><td>u</td></tr> +<tr><td>118</td><td>v</td><td>v</td><td>v</td><td>v</td></tr> +<tr bgcolor="yellow"><td>119</td><td>w</td><td>w</td><td>w</td><td>w</td></tr> +<tr><td>120</td><td>x</td><td>x</td><td>x</td><td>x</td></tr> +<tr bgcolor="yellow"><td>121</td><td>y</td><td>y</td><td>y</td><td>y</td></tr> +<tr><td>122</td><td>z</td><td>z</td><td>z</td><td>z</td></tr> +<tr bgcolor="yellow"><td>123</td><td>endash</td><td>braceleft</td><td>endash</td><td>endash</td></tr> +<tr><td>124</td><td>emdash</td><td>bar</td><td>emdash</td><td>emdash</td></tr> +<tr bgcolor="yellow"><td>125</td><td>hungarumlaut</td><td>braceright</td><td>hungarumlaut</td><td>hungarumlaut</td></tr> +<tr><td>126</td><td>tilde</td><td>asciitilde</td><td>tilde</td><td>tilde</td></tr> +<tr bgcolor="yellow"><td>127</td><td>dieresis</td><td>hyphen</td><td>dieresis</td><td>dieresis</td></tr> +<tr><td>128</td><td>--</td><td>Abreve</td><td>--</td><td>Euro</td></tr> +<tr bgcolor="yellow"><td>129</td><td>--</td><td>Aogonek</td><td>Aogonek</td><td>Aogonek</td></tr> +<tr><td>130</td><td>--</td><td>Cacute</td><td>Cacute</td><td>Cacute</td></tr> +<tr bgcolor="yellow"><td>131</td><td>--</td><td>Ccaron</td></td><td>--</td><td>greater</td></tr> +<tr><td>132</td><td>--</td><td>Dcaron</td></td><td>--</td><td>greaterequal</td></tr> +<tr bgcolor="yellow"><td>133</td><td>--</td><td>Ecaron</td></td><td>--</td><td>approxequal</td></tr> +<tr><td>134</td><td>--</td><td>Eogonek</td><td>Eogonek</td><td>Eogonek</td></tr> +<tr bgcolor="yellow"><td>135</td><td>--</td><td>Gbreve</td><td>--</td><td>Iogonek</td></tr> +<tr><td>136</td><td>--</td><td>Lacute</td><td>--</td><td>less</td></tr> +<tr bgcolor="yellow"><td>137</td><td>--</td><td>Lquoteright</td><td>--</td><td>lessequal</td></tr> +<tr><td>138</td><td>--</td><td>Lslash</td><td>Lslash</td><td>Lslash</td></tr> +<tr bgcolor="yellow"><td>139</td><td>--</td><td>Nacute</td><td>Nacute</td><td>Nacute</td></tr> +<tr><td>140</td><td>--</td><td>Ncaron</td><td>--</td><td>asciitilde</td></tr> +<tr bgcolor="yellow"><td>141</td><td>--</td><td>Eng</td><td>--</td><td>asciicircum</td></tr> +<tr><td>142</td><td>--</td><td>Ohungarumlaut</td><td>--</td><td>ell</td></tr> +<tr bgcolor="yellow"><td>143</td><td>--</td><td>Racute</td><td>--</td><td>dagger</td></tr> +<tr><td>144</td><td>--</td><td>Rcaron</td><td>--</td><td>daggerdbl</td></tr> +<tr bgcolor="yellow"><td>145</td><td>--</td><td>Sacute</td><td>Sacute</td><td>Sacute</td></tr> +<tr><td>146</td><td>--</td><td>Scaron</td><td>--</td><td>Scaron</td></tr> +<tr bgcolor="yellow"><td>147</td><td>--</td><td>Scedilla</td><td>--</td><td>Scommaaccent</td></tr> +<tr><td>148</td><td>--</td><td>Tcaron</td><td>--</td><td>degree</td></tr> +<tr bgcolor="yellow"><td>149</td><td>--</td><td>Tcedilla</td><td>--</td><td>Tcommaaccent</td></tr> +<tr><td>150</td><td>--</td><td>Uhungarumlaut</td><td>--</td><td>ogonek</td></tr> +<tr bgcolor="yellow"><td>151</td><td>--</td><td>Uring</td><td>--</td><td>Uogonek</td></tr> +<tr><td>152</td><td>--</td><td>Ydieresis</td><td>--</td><td>Ydieresis</td></tr> +<tr bgcolor="yellow"><td>153</td><td>--</td><td>Zacute</td><td>Zacute</td><td>Zacute</td></tr> +<tr><td>154</td><td>--</td><td>Zcaron</td><td>--</td><td>Zcaron</td></tr> +<tr bgcolor="yellow"><td>155</td><td>--</td><td>Zdotaccent</td><td>Zdotaccent</td><td>Zdotaccent</td></tr> +<tr><td>156</td><td>--</td><td>IJ</td><td>--</td><td>IJ</td></tr> +<tr bgcolor="yellow"><td>157</td><td>--</td><td>Idotaccent</td><td>--</td><td>braceleft</td></tr> +<tr><td>158</td><td>--</td><td>dbar</td><td>--</td><td>braceright</td></tr> +<tr bgcolor="yellow"><td>159</td><td>--</td><td>section</td><td>--</td><td>section</td></tr> +<tr><td>160</td><td>--</td><td>abreve</td><td>--</td><td>--</td></tr> +<tr bgcolor="yellow"><td>161</td><td>--</td><td>aogonek</td><td>aogonek</td><td>aogonek</td></tr> +<tr><td>162</td><td>--</td><td>cacute</td><td>cacute</td><td>cacute</td></tr> +<tr bgcolor="yellow"><td>163</td><td>--</td><td>ccaron</td><td>--</td><td>registered</td></tr> +<tr><td>164</td><td>--</td><td>dquoteright</td><td>--</td><td>copyright</td></tr> +<tr bgcolor="yellow"><td>165</td><td>--</td><td>ecaron</td><td>--</td><td>divide</td></tr> +<tr><td>166</td><td>--</td><td>eogonek</td><td>eogonek</td><td>eogonek</td></tr> +<tr bgcolor="yellow"><td>167</td><td>--</td><td>gbreve</td><td>--</td><td>iogonek</td></tr> +<tr><td>168</td><td>--</td><td>lacute</td><td>--</td><td>minus</td></tr> +<tr bgcolor="yellow"><td>169</td><td>--</td><td>lquoteright</td><td>--</td><td>multiply</td></tr> +<tr><td>170</td><td>--</td><td>lslash</td><td>lslash</td><td>lslash</td></tr> +<tr bgcolor="yellow"><td>171</td><td>--</td><td>nacute</td><td>nacute</td><td>nacute</td></tr> +<tr><td>172</td><td>--</td><td>ncaron</td><td>--</td><td>plusminus</td></tr> +<tr bgcolor="yellow"><td>173</td><td>--</td><td>eng</td><td>--</td><td>infinity</td></tr> +<tr><td>174</td><td>--</td><td>ohungarumlaut</td><td>guillemotleft</td><td>guillemotleft</td></tr> +<tr bgcolor="yellow"><td>175</td><td>--</td><td>racute</td><td>guillemotright</td><td>guillemotright</td></tr> +<tr><td>176</td><td>--</td><td>rcaron</td><td>--</td><td>paragraph</td></tr> +<tr bgcolor="yellow"><td>177</td><td>--</td><td>sacute</td><td>sacute</td><td>sacute</td></tr> +<tr><td>178</td><td>--</td><td>scaron</td><td>--</td><td>scaron</td></tr> +<tr bgcolor="yellow"><td>179</td><td>--</td><td>scedilla</td><td>--</td><td>scommaaccent</td></tr> +<tr><td>180</td><td>--</td><td>tquoteright</td><td>--</td><td>bullet</td></tr> +<tr bgcolor="yellow"><td>181</td><td>--</td><td>tcedilla</td><td>--</td><td>tcommaaccent</td></tr> +<tr><td>182</td><td>--</td><td>uhungarumlaut</td><td>--</td><td>threequartersemdash</td></tr> +<tr bgcolor="yellow"><td>183</td><td>--</td><td>uring</td><td>--</td><td>uogonek</td></tr> +<tr><td>184</td><td>--</td><td>ydieresis</td><td>--</td><td>ydieresis</td></tr> +<tr bgcolor="yellow"><td>185</td><td>--</td><td>zacute</td><td>zacute</td><td>zacute</td></tr> +<tr><td>186</td><td>--</td><td>zcaron</td><td>--</td><td>zcaron</td></tr> +<tr bgcolor="yellow"><td>187</td><td>--</td><td>zdotaccent</td><td>zdotaccent</td><td>zdotaccent</td></tr> +<tr><td>188</td><td>--</td><td>ij</td><td>--</td><td>ij</td></tr> +<tr bgcolor="yellow"><td>189</td><td>--</td><td>exclamdown</td><td>--</td><td>periodcentered</td></tr> +<tr><td>190</td><td>--</td><td>questiondown</td><td>--</td><td>quotedbl</td></tr> +<tr bgcolor="yellow"><td>191</td><td>--</td><td>sterling</td><td>--</td><td>quotesingle</td></tr> +<tr><td>192</td><td>--</td><td>Agrave</td><td>--</td><td>Agrave</td></tr> +<tr bgcolor="yellow"><td>193</td><td>--</td><td>Aacute</td><td>--</td><td>Aacute</td></tr> +<tr><td>194</td><td>--</td><td>Acircumflex</td><td>--</td><td>Acircumflex</td></tr> +<tr bgcolor="yellow"><td>195</td><td>--</td><td>Atilde</td><td>--</td><td>Atilde</td></tr> +<tr><td>196</td><td>--</td><td>Adieresis</td><td>--</td><td>Adieresis</td></tr> +<tr bgcolor="yellow"><td>197</td><td>--</td><td>Aring</td><td>--</td><td>Aring</td></tr> +<tr><td>198</td><td>--</td><td>AE</td><td>--</td><td>backslash</td></tr> +<tr bgcolor="yellow"><td>199</td><td>--</td><td>Ccedilla</td><td>--</td><td>Ccedilla</td></tr> +<tr><td>200</td><td>--</td><td>Egrave</td><td>--</td><td>Egrave</td></tr> +<tr bgcolor="yellow"><td>201</td><td>--</td><td>Eacute</td><td>--</td><td>Eacute</td></tr> +<tr><td>202</td><td>--</td><td>Ecircumflex</td><td>--</td><td>Ecircumflex</td></tr> +<tr bgcolor="yellow"><td>203</td><td>--</td><td>Edieresis</td><td>--</td><td>Edieresis</td></tr> +<tr><td>204</td><td>--</td><td>Igrave</td><td>--</td><td>Igrave</td></tr> +<tr bgcolor="yellow"><td>205</td><td>--</td><td>Iacute</td><td>--</td><td>Iacute</td></tr> +<tr><td>206</td><td>--</td><td>Icircumflex</td><td>--</td><td>Icircumflex</td></tr> +<tr bgcolor="yellow"><td>207</td><td>--</td><td>Idieresis</td><td>--</td><td>Idieresis</td></tr> +<tr><td>208</td><td>--</td><td>Eth</td><td>--</td><td>Eth</td></tr> +<tr bgcolor="yellow"><td>209</td><td>--</td><td>Ntilde</td><td>--</td><td>Ntilde</td></tr> +<tr><td>210</td><td>--</td><td>Ograve</td><td>--</td><td>Ograve</td></tr> +<tr bgcolor="yellow"><td>211</td><td>--</td><td>Oacute</td><td>Oacute</td><td>Oacute</td></tr> +<tr><td>212</td><td>--</td><td>Ocircumflex</td><td>--</td><td>Ocircumflex</td></tr> +<tr bgcolor="yellow"><td>213</td><td>--</td><td>Otilde</td><td>--</td><td>Otilde</td></tr> +<tr><td>214</td><td>--</td><td>Odieresis</td><td>--</td><td>Odieresis</td></tr> +<tr bgcolor="yellow"><td>215</td><td>--</td><td>OE</td><td>--</td><td>currency</td></tr> +<tr><td>216</td><td>--</td><td>Oslash</td><td>--</td><td>perthousand</td></tr> +<tr bgcolor="yellow"><td>217</td><td>--</td><td>Ugrave</td><td>--</td><td>Ugrave</td></tr> +<tr><td>218</td><td>--</td><td>Uacute</td><td>--</td><td>Uacute</td></tr> +<tr bgcolor="yellow"><td>219</td><td>--</td><td>Ucircumflex</td><td>--</td><td>Ucircumflex</td></tr> +<tr><td>220</td><td>--</td><td>Udieresis</td><td>--</td><td>Udieresis</td></tr> +<tr bgcolor="yellow"><td>221</td><td>--</td><td>Yacute</td><td>--</td><td>Yacute</td></tr> +<tr><td>222</td><td>--</td><td>Thorn</td><td>--</td><td>Thorn</td></tr> +<tr bgcolor="yellow"><td>223</td><td>--</td><td>Germandbls</td><td>--</td><td>bar</td></tr> +<tr><td>224</td><td>--</td><td>agrave</td><td>--</td><td>agrave</td></tr> +<tr bgcolor="yellow"><td>225</td><td>--</td><td>aacute</td><td>--</td><td>aacute</td></tr> +<tr><td>226</td><td>--</td><td>acircumflex</td><td>--</td><td>acircumflex</td></tr> +<tr bgcolor="yellow"><td>227</td><td>--</td><td>atilde</td><td>--</td><td>atilde</td></tr> +<tr><td>228</td><td>--</td><td>adieresis</td><td>--</td><td>adieresis</td></tr> +<tr bgcolor="yellow"><td>229</td><td>--</td><td>aring</td><td>--</td><td>aring</td></tr> +<tr><td>230</td><td>--</td><td>ae</td><td>--</td><td>underscore</td></tr> +<tr bgcolor="yellow"><td>231</td><td>--</td><td>ccedilla</td><td>--</td><td>ccedilla</td></tr> +<tr><td>232</td><td>--</td><td>egrave</td><td>--</td><td>egrave</td></tr> +<tr bgcolor="yellow"><td>233</td><td>--</td><td>eacute</td><td>--</td><td>eacute</td></tr> +<tr><td>234</td><td>--</td><td>ecircumflex</td><td>--</td><td>ecircumflex</td></tr> +<tr bgcolor="yellow"><td>235</td><td>--</td><td>edieresis</td><td>--</td><td>edieresis</td></tr> +<tr><td>236</td><td>--</td><td>igrave</td><td>--</td><td>igrave</td></tr> +<tr bgcolor="yellow"><td>237</td><td>--</td><td>iacute</td><td>--</td><td>iacute</td></tr> +<tr><td>238</td><td>--</td><td>icircumflex</td><td>--</td><td>icircumflex</td></tr> +<tr bgcolor="yellow"><td>239</td><td>--</td><td>idieresis</td><td>--</td><td>idieresis</td></tr> +<tr><td>240</td><td>--</td><td>eth</td><td>--</td><td>eth</td></tr> +<tr bgcolor="yellow"><td>241</td><td>--</td><td>ntilde</td><td>--</td><td>ntilde</td></tr> +<tr><td>242</td><td>--</td><td>ograve</td><td>--</td><td>ograve</td></tr> +<tr bgcolor="yellow"><td>243</td><td>--</td><td>oacute</td><td>oacute</td><td>oacute</td></tr> +<tr><td>244</td><td>--</td><td>ocircumflex</td><td>--</td><td>ocircumflex</td></tr> +<tr bgcolor="yellow"><td>245</td><td>--</td><td>otilde</td><td>--</td><td>otilde</td></tr> +<tr><td>246</td><td>--</td><td>odieresis</td><td>--</td><td>odieresis</td></tr> +<tr bgcolor="yellow"><td>247</td><td>--</td><td>oe</td><td>--</td><td>anglearc</td></tr> +<tr><td>248</td><td>--</td><td>oslash</td><td>--</td><td>diameter</td></tr> +<tr bgcolor="yellow"><td>249</td><td>--</td><td>ugrave</td><td>--</td><td>ugrave</td></tr> +<tr><td>250</td><td>--</td><td>uacute</td><td>--</td><td>uacute</td></tr> +<tr bgcolor="yellow"><td>251</td><td>--</td><td>ucircumflex</td><td>--</td><td>ucircumflex</td></tr> +<tr><td>252</td><td>--</td><td>udieresis</td><td>--</td><td>udieresis</td></tr> +<tr bgcolor="yellow"><td>253</td><td>--</td><td>yacute</td><td>--</td><td>yacute</td></tr> +<tr><td>254</td><td>--</td><td>thorn</td><td>--</td><td>thorn</td></tr> +<tr bgcolor="yellow"><td>255</td><td>--</td><td>germandbls</td><td>quotedblbase</td><td>quotedblbase</td></tr> +</table> + +<P><i>Tabelę przedrukowano z Biuletynu GUST, nr 9/1997, +s. 31</i> </i><BR> +<i>Zmodyfikowano 13.09.2004, zgodnie z aktualnym układem QX wer. 0.06 (StaW)</i></P> +<hr> +<A HREF="qx-info.html#P9"><IMG ALIGN="BOTTOM" SRC="./back.gif">Powrót</A> +</body> +</html> diff --git a/info/tex-virtual-academy-pl/fonty/qx-table2.html b/info/tex-virtual-academy-pl/fonty/qx-table2.html new file mode 100644 index 0000000000..27d816239f --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/qx-table2.html @@ -0,0 +1,279 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> +<head> +<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> +<meta name="keywords" lang="pl" content="Fonty, kodowanie QX"> +<meta name="keywords" lang="en" content="Computer fonts, QX encoding"> +<title> Kodowanie QX</title> +</head> +<body> +<h3>Tabela 2. Układ QX wer. 0.06 -- zastosowania okienkowe -- porównanie z układem +CP 1250 i Macintosh PLEURO</h3> +<table align=center> +<tr bgcolor="yellow"><td>Code</td><td>New ANSI (0-127)</td><td>Macintosh</td><td>QX ver. 0.06</td><tr> +<tr bgcolor="yellow"><td> </td><td>+ CP1250 </td><td>PLEURO </td><td> </td><tr> +<tr><td>0</td><td>--</td><td>--</td><td>--</td><tr> +<tr bgcolor="yellow"><td>1</td><td>--</td><td>--</td><td>acute</td></tr> +<tr><td>2</td><td>--</td><td>--</td><td>circumflex</td></tr> +<tr bgcolor="yellow"><td>3</td><td>--</td><td>--</td><td>cedilla</td></tr> +<tr><td>4</td><td>--</td><td>--</td><td>dieresis</td></tr> +<tr bgcolor="yellow"><td>5</td><td>--</td><td>--</td><td>breve</td></tr> +<tr><td>6</td><td>--</td><td>--</td><td>dotaccent</td></tr> +<tr bgcolor="yellow"><td>7</td><td>--</td><td>--</td><td>macron</td></tr> +<tr><td>8</td><td>--</td><td>--</td><td>ring</td></tr> +<tr bgcolor="yellow"><td>9</td><td>--</td><td>--</td><td>--</td></tr> +<tr><td>10</td><td>--</td><td>--</td><td>hungarumlaut</td></tr> +<tr bgcolor="yellow"><td>11</td><td>--</td><td>--</td><td>ogonek</td></tr> +<tr><td>12</td><td>--</td><td>--</td><td>caron</td></tr> +<tr bgcolor="yellow"><td>13</td><td>--</td><td>--</td><td>--</td></tr> +<tr><td>14</td><td>--</td><td>--</td><td>dotlessi</td></tr> +<tr bgcolor="yellow"><td>15</td><td>--</td><td>--</td><td>dotlessj</td></tr> +<tr><td>16</td><td>--</td><td>--</td><td>tilde</td></tr> +<tr bgcolor="yellow"><td>17</td><td>--</td><td>--</td><td>ff</td></tr> +<tr><td>18</td><td>--</td><td>--</td><td>ffi</td></tr> +<tr bgcolor="yellow"><td>19</td><td>--</td><td>--</td><td>ffl</td></tr> +<tr><td>20</td><td>--</td><td>--</td><td>f_k</td></tr> +<tr bgcolor="yellow"><td>21</td><td>--</td><td>--</td><td>approxequal</td></tr> +<tr><td>22</td><td>--</td><td>--</td><td>ell</td></tr> +<tr bgcolor="yellow"><td>23</td><td>--</td><td>--</td><td>infinity</td></tr> +<tr><td>24</td><td>--</td><td>--</td><td>alpha</td></tr> +<tr bgcolor="yellow"><td>25</td><td>--</td><td>--</td><td>beta</td></tr> +<tr><td>26</td><td>--</td><td>--</td><td>delta</td></tr> +<tr bgcolor="yellow"><td>27</td><td>--</td><td>--</td><td>pi</td></tr> +<tr><td>28</td><td>--</td><td>--</td><td>Delta</td></tr> +<tr bgcolor="yellow"><td>29</td><td>--</td><td>--</td><td>Pi</td></tr> +<tr><td>30</td><td>--</td><td>--</td><td>Sigma</td></tr> +<tr bgcolor="yellow"><td>31</td><td>--</td><td>--</td><td>Omega</td></tr> +<tr><td>32</td><td>space</td><td>space</td><td>space</td></tr> +<tr bgcolor="yellow"><td>33</td><td>exclam</td><td>exclam</td><td>exclam</td></tr> +<tr><td>34</td><td>quotedbl</td><td>quotedbl</td><td>quotedbl</td></tr> +<tr bgcolor="yellow"><td>35</td><td>numbersign</td><td>numbersign</td><td>numbersign</td></tr> +<tr><td>36</td><td>dollar</td><td>dollar</td><td>dollar</td></tr> +<tr bgcolor="yellow"><td>37</td><td>percent</td><td>percent</td><td>percent</td></tr> +<tr><td>38</td><td>ampersand</td><td>ampersand</td><td>ampersand</td></tr> +<tr bgcolor="yellow"><td>39</td><td>quotesingle</td><td>quotesingle</td><td>quotesingle</td></tr> +<tr><td>40</td><td>parenleft</td><td>parenleft</td><td>parenleft</td></tr> +<tr bgcolor="yellow"><td>41</td><td>parenright</td><td>parenright</td><td>parenright</td></tr> +<tr><td>42</td><td>asterisk</td><td>asterisk</td><td>asterisk</td></tr> +<tr bgcolor="yellow"><td>43</td><td>plus</td><td>plus</td><td>plus</td></tr> +<tr><td>44</td><td>comma</td><td>comma</td><td>comma</td></tr> +<tr bgcolor="yellow"><td>45</td><td>hyphen</td><td>hyphen</td><td>hyphen</td></tr> +<tr><td>46</td><td>period</td><td>period</td><td>period</td></tr> +<tr bgcolor="yellow"><td>47</td><td>slash</td><td>slash</td><td>slash</td></tr> +<tr><td>48</td><td>zero</td><td>zero</td><td>zero</td></tr> +<tr bgcolor="yellow"><td>49</td><td>one</td><td>one</td><td>one</td></tr> +<tr><td>50</td><td>two</td><td>two</td><td>two</td></tr> +<tr bgcolor="yellow"><td>51</td><td>three</td><td>three</td><td>three</td></tr> +<tr><td>52</td><td>four</td><td>four</td><td>four</td></tr> +<tr bgcolor="yellow"><td>53</td><td>five</td><td>five</td><td>five</td></tr> +<tr><td>54</td><td>six</td><td>six</td><td>six</td></tr> +<tr bgcolor="yellow"><td>55</td><td>seven</td><td>seven</td><td>seven</td></tr> +<tr><td>56</td><td>eight</td><td>eight</td><td>eight</td></tr> +<tr bgcolor="yellow"><td>57</td><td>nine</td><td>nine</td><td>nine</td></tr> +<tr><td>58</td><td>colon</td><td>colon</td><td>colon</td></tr> +<tr bgcolor="yellow"><td>59</td><td>semicolon</td><td>semicolon</td><td>semicolon</td></tr> +<tr><td>60</td><td>less</td><td>less</td><td>less</td></tr> +<tr bgcolor="yellow"><td>61</td><td>equal</td><td>equal</td><td>equal</td></tr> +<tr><td>62</td><td>greater</td><td>greater</td><td>greater</td></tr> +<tr bgcolor="yellow"><td>63</td><td>question</td><td>question</td><td>question</td></tr> +<tr><td>64</td><td>at</td><td>at</td><td>at</td></tr> +<tr bgcolor="yellow"><td>65</td><td>A</td><td>A</td><td>A</td></tr> +<tr><td>66</td><td>B</td><td>B</td><td>B</td></tr> +<tr bgcolor="yellow"><td>67</td><td>C</td><td>C</td><td>C</td></tr> +<tr><td>68</td><td>D</td><td>D</td><td>D</td></tr> +<tr bgcolor="yellow"><td>69</td><td>E</td><td>E</td><td>E</td></tr> +<tr><td>70</td><td>F</td><td>F</td><td>F</td></tr> +<tr bgcolor="yellow"><td>71</td><td>G</td><td>G</td><td>G</td></tr> +<tr><td>72</td><td>H</td><td>H</td><td>H</td></tr> +<tr bgcolor="yellow"><td>73</td><td>I</td><td>I</td><td>I</td></tr> +<tr><td>74</td><td>J</td><td>J</td><td>J</td></tr> +<tr bgcolor="yellow"><td>75</td><td>K</td><td>K</td><td>K</td></tr> +<tr><td>76</td><td>L</td><td>L</td><td>L</td></tr> +<tr bgcolor="yellow"><td>77</td><td>M</td><td>M</td><td>M</td></tr> +<tr><td>78</td><td>N</td><td>N</td><td>N</td></tr> +<tr bgcolor="yellow"><td>79</td><td>O</td><td>O</td><td>O</td></tr> +<tr><td>80</td><td>P</td><td>P</td><td>P</td></tr> +<tr bgcolor="yellow"><td>81</td><td>Q</td><td>Q</td><td>Q</td></tr> +<tr><td>82</td><td>R</td><td>R</td><td>R</td></tr> +<tr bgcolor="yellow"><td>83</td><td>S</td><td>S</td><td>S</td></tr> +<tr><td>84</td><td>T</td><td>T</td><td>T</td></tr> +<tr bgcolor="yellow"><td>85</td><td>U</td><td>U</td><td>U</td></tr> +<tr><td>86</td><td>V</td><td>V</td><td>V</td></tr> +<tr bgcolor="yellow"><td>87</td><td>W</td><td>W</td><td>W</td></tr> +<tr><td>88</td><td>X</td><td>X</td><td>X</td></tr> +<tr bgcolor="yellow"><td>89</td><td>Y</td><td>Y</td><td>Y</td></tr> +<tr><td>90</td><td>Z</td><td>Z</td><td>Z</td></tr> +<tr bgcolor="yellow"><td>91</td><td>bracketleft</td><td>bracketleft</td><td>bracketleft</td></tr> +<tr><td>92</td><td>backslash</td><td>backslash</td><td>backslash</td></tr> +<tr bgcolor="yellow"><td>93</td><td>bracketright</td><td>bracketright</td><td>bracketright</td></tr> +<tr><td>94</td><td>asciicircum</td><td>asciicircum</td><td>asciicircum</td></tr> +<tr bgcolor="yellow"><td>95</td><td>underscore</td><td>underscore</td><td>underscore</td></tr> +<tr><td>96</td><td>grave</td><td>grave</td><td>grave</td></tr> +<tr bgcolor="yellow"><td>97</td><td>a</td><td>a</td><td>a</td></tr> +<tr><td>98</td><td>b</td><td>b</td><td>b</td></tr> +<tr bgcolor="yellow"><td>99</td><td>c</td><td>c</td><td>c</td></tr> +<tr><td>100</td><td>d</td><td>d</td><td>d</td></tr> +<tr bgcolor="yellow"><td>101</td><td>e</td><td>e</td><td>e</td></tr> +<tr><td>102</td><td>f</td><td>f</td><td>f</td></tr> +<tr bgcolor="yellow"><td>103</td><td>g</td><td>g</td><td>g</td></tr> +<tr><td>104</td><td>h</td><td>h</td><td>h</td></tr> +<tr bgcolor="yellow"><td>105</td><td>i</td><td>i</td><td>i</td></tr> +<tr><td>106</td><td>j</td><td>j</td><td>j</td></tr> +<tr bgcolor="yellow"><td>107</td><td>k</td><td>k</td><td>k</td></tr> +<tr><td>108</td><td>l</td><td>l</td><td>l</td></tr> +<tr bgcolor="yellow"><td>109</td><td>m</td><td>m</td><td>m</td></tr> +<tr><td>110</td><td>n</td><td>n</td><td>n</td></tr> +<tr bgcolor="yellow"><td>111</td><td>o</td><td>o</td><td>o</td></tr> +<tr><td>112</td><td>p</td><td>p</td><td>p</td></tr> +<tr bgcolor="yellow"><td>113</td><td>q</td><td>q</td><td>q</td></tr> +<tr><td>114</td><td>r</td><td>r</td><td>r</td></tr> +<tr bgcolor="yellow"><td>115</td><td>s</td><td>s</td><td>s</td></tr> +<tr><td>116</td><td>t</td><td>t</td><td>t</td></tr> +<tr bgcolor="yellow"><td>117</td><td>u</td><td>u</td><td>u</td></tr> +<tr><td>118</td><td>v</td><td>v</td><td>v</td></tr> +<tr bgcolor="yellow"><td>119</td><td>w</td><td>w</td><td>w</td></tr> +<tr><td>120</td><td>x</td><td>x</td><td>x</td></tr> +<tr bgcolor="yellow"><td>121</td><td>y</td><td>y</td><td>y</td></tr> +<tr><td>122</td><td>z</td><td>z</td><td>z</td></tr> +<tr bgcolor="yellow"><td>123</td><td>braceleft</td><td>braceleft</td><td>braceleft</td></tr> +<tr><td>124</td><td>bar</td><td>bar</td><td>bar</td></tr> +<tr bgcolor="yellow"><td>125</td><td>braceright</td><td>braceright</td><td>braceright</td></tr> +<tr><td>126</td><td>asciitilde</td><td>asciitilde</td><td>asciitilde</td></tr> +<tr bgcolor="yellow"><td>127</td><td>--</td><td>--</td><td>--</td></tr> +<tr><td>128</td><td>Euro</td><td>--</td><td>Euro</td></tr> +<tr bgcolor="yellow"><td>129</td><td>--</td><td>--</td><td>fi</td></tr> +<tr><td>130</td><td>quotesinglbase</td><td>quotesinglbase</td><td>fl</td></tr> +<tr bgcolor="yellow"><td>131</td><td>--</td><td>Ydieresis</td><td>Ydieresis</td></tr> +<tr><td>132</td><td>quotedblbase</td><td>quotedblbase</td><td>quotedblbase</td></tr> +<tr bgcolor="yellow"><td>133</td><td>ellipsis</td><td>ellipsis</td><td>ellipsis</td></tr> +<tr><td>134</td><td>dagger</td><td>dagger</td><td>dagger</td></tr> +<tr bgcolor="yellow"><td>135</td><td>daggerdbl</td><td>daggerdbl</td><td>daggerdbl</td></tr> +<tr><td>136</td><td>--</td><td>Ecircumflex</td><td>Ecircumflex</td></tr> +<tr bgcolor="yellow"><td>137</td><td>perthousand</td><td>perthousand</td><td>perthousand</td></tr> +<tr><td>138</td><td>Scaron</td><td>Scaron</td><td>Scaron</td></tr> +<tr bgcolor="yellow"><td>139</td><td>guilsinglleft</td><td>guilsinglleft</td><td>Scommaaccent</td></tr> +<tr><td>140</td><td>Sacute</td><td>Sacute</td><td>Sacute</td></tr> +<tr bgcolor="yellow"><td>141</td><td>Tcaron</td><td>OE</td><td>OE</td></tr> +<tr><td>142</td><td>Zcaron</td><td>Zcaron</td><td>Zcaron</td></tr> +<tr bgcolor="yellow"><td>143</td><td>Zacute</td><td>Zacute</td><td>Zacute</td></tr> +<tr><td>144</td><td>--</td><td>--</td><td>threequartersemdash</td></tr> +<tr bgcolor="yellow"><td>145</td><td>quoteleft</td><td>quoteleft</td><td>quoteleft</td></tr> +<tr><td>146</td><td>quoteright</td><td>quoteright</td><td>quoteright</td></tr> +<tr bgcolor="yellow"><td>147</td><td>quotedblleft</td><td>quotedblleft</td><td>quotedblleft</td></tr> +<tr><td>148</td><td>quotedblright</td><td>quotedblright</td><td>quotedblright</td></tr> +<tr bgcolor="yellow"><td>149</td><td>bullet</td><td>bullet</td><td>bullet</td></tr> +<tr><td>150</td><td>endash</td><td>endash</td><td>endash</td></tr> +<tr bgcolor="yellow"><td>151</td><td>emdash</td><td>emdash</td><td>emdash</td></tr> +<tr><td>152</td><td>--</td><td>ecircumflex</td><td>ecircumflex</td></tr> +<tr bgcolor="yellow"><td>153</td><td>trademark</td><td>trademark</td><td>anglearc</td></tr> +<tr><td>154</td><td>scaron</td><td>scaron</td><td>scaron</td></tr> +<tr bgcolor="yellow"><td>155</td><td>guilsinglright</td><td>guilsinglright</td><td>scommaaccent</td></tr> +<tr><td>156</td><td>sacute</td><td>sacute</td><td>sacute</td></tr> +<tr bgcolor="yellow"><td>157</td><td>tquoteright</td><td>oe</td><td>oe</td></tr> +<tr><td>158</td><td>zcaron</td><td>zcaron</td><td>zcaron</td></tr> +<tr bgcolor="yellow"><td>159</td><td>zacute</td><td>zacute</td><td>zacute</td></tr> +<tr><td>160</td><td>--</td><td>nbspace</td><td>nbspace</td></tr> +<tr bgcolor="yellow"><td>161</td><td>caron</td><td>exclamdown</td><td>exclamdown</td></tr> +<tr><td>162</td><td>breve</td><td>questiondown</td><td>questiondown</td></tr> +<tr bgcolor="yellow"><td>163</td><td>Lslash</td><td>Lslash</td><td>Lslash</td></tr> +<tr><td>164</td><td>currency</td><td>currency</td><td>currency</td></tr> +<tr bgcolor="yellow"><td>165</td><td>Aogonek</td><td>Aogonek</td><td>Aogonek</td></tr> +<tr><td>166</td><td>brokenbar</td><td>brokenbar</td><td>diameter</td></tr> +<tr bgcolor="yellow"><td>167</td><td>section</td><td>section</td><td>section</td></tr> +<tr><td>168</td><td>dieresis</td><td>dieresis</td><td>Uogonek</td></tr> +<tr bgcolor="yellow"><td>169</td><td>copyright</td><td>copyright</td><td>copyright</td></tr> +<tr><td>170</td><td>Scedilla</td><td>AE</td><td>AE</td></tr> +<tr bgcolor="yellow"><td>171</td><td>guillemotleft</td><td>guillemotleft</td><td>guillemotleft</td></tr> +<tr><td>172</td><td>logicalnot</td><td>Ntilde</td><td>Ntilde</td></tr> +<tr bgcolor="yellow"><td>173</td><td>hyphen</td><td>minus</td><td>minus</td></tr> +<tr><td>174</td><td>registered</td><td>registered</td><td>registered</td></tr> +<tr bgcolor="yellow"><td>175</td><td>Zdotaccent</td><td>Zdotaccent</td><td>Zdotaccent</td></tr> +<tr><td>176</td><td>degree</td><td>degree</td><td>degree</td></tr> +<tr bgcolor="yellow"><td>177</td><td>plusminus</td><td>plusminus</td><td>plusminus</td></tr> +<tr><td>178</td><td>ogonek</td><td>twosuperior</td><td>lessequal</td></tr> +<tr bgcolor="yellow"><td>179</td><td>lslash</td><td>lslash</td><td>lslash</td></tr> +<tr><td>180</td><td>acute</td><td>acute</td><td>greaterequal</td></tr> +<tr bgcolor="yellow"><td>181</td><td>mu</td><td>mu</td><td>mu</td></tr> +<tr><td>182</td><td>paragraph</td><td>paragraph</td><td>paragraph</td></tr> +<tr bgcolor="yellow"><td>183</td><td>periodcentered</td><td>periodcentered</td><td>periodcentered</td></tr> +<tr><td>184</td><td>cedilla</td><td>--</td><td>uogonek</td></tr> +<tr bgcolor="yellow"><td>185</td><td>aogonek</td><td>aogonek</td><td>aogonek</td></tr> +<tr><td>186</td><td>scedilla</td><td>ae</td><td>ae</td></tr> +<tr bgcolor="yellow"><td>187</td><td>guillemotright</td><td>guillemotright</td><td>guillemotright</td></tr> +<tr><td>188</td><td>Lquoteright</td><td>ntilde</td><td>ntilde</td></tr> +<tr bgcolor="yellow"><td>189</td><td>hungarumlaut</td><td>onehalf</td><td>Tcommaaccent</td></tr> +<tr><td>190</td><td>lquoteright</td><td>threequarters</td><td>tcommaaccent</td></tr> +<tr bgcolor="yellow"><td>191</td><td>zdotaccent</td><td>zdotaccent</td><td>zdotaccent</td></tr> +<tr><td>192</td><td>Racute</td><td>Agrave</td><td>Agrave</td></tr> +<tr bgcolor="yellow"><td>193</td><td>Aacute</td><td>Aacute</td><td>Aacute</td></tr> +<tr><td>194</td><td>Acircumflex</td><td>Acircumflex</td><td>Acircumflex</td></tr> +<tr bgcolor="yellow"><td>195</td><td>Abreve</td><td>Atilde</td><td>Atilde</td></tr> +<tr><td>196</td><td>Adieresis</td><td>Adieresis</td><td>Adieresis</td></tr> +<tr bgcolor="yellow"><td>197</td><td>Lacute</td><td>Aring</td><td>Aring</td></tr> +<tr><td>198</td><td>Cacute</td><td>Cacute</td><td>Cacute</td></tr> +<tr bgcolor="yellow"><td>199</td><td>Ccedilla</td><td>Ccedilla</td><td>Ccedilla</td></tr> +<tr><td>200</td><td>Ccaron</td><td>Egrave</td><td>Egrave</td></tr> +<tr bgcolor="yellow"><td>201</td><td>Eacute</td><td>Eacute</td><td>Eacute</td></tr> +<tr><td>202</td><td>Eogonek</td><td>Eogonek</td><td>Eogonek</td></tr> +<tr bgcolor="yellow"><td>203</td><td>Edieresis</td><td>Edieresis</td><td>Edieresis</td></tr> +<tr><td>204</td><td>Ecaron</td><td>Igrave</td><td>Igrave</td></tr> +<tr bgcolor="yellow"><td>205</td><td>Iacute</td><td>Iacute</td><td>Iacute</td></tr> +<tr><td>206</td><td>Icircumflex</td><td>Icircumflex</td><td>Icircumflex</td></tr> +<tr bgcolor="yellow"><td>207</td><td>Dcaron</td><td>Idieresis</td><td>Idieresis</td></tr> +<tr><td>208</td><td>Eth</td><td>Eth</td><td>Eth</td></tr> +<tr bgcolor="yellow"><td>209</td><td>Nacute</td><td>Nacute</td><td>Nacute</td></tr> +<tr><td>210</td><td>Ncaron</td><td>Ograve</td><td>Ograve</td></tr> +<tr bgcolor="yellow"><td>211</td><td>Oacute</td><td>Oacute</td><td>Oacute</td></tr> +<tr><td>212</td><td>Ocircumflex</td><td>Ocircumflex</td><td>Ocircumflex</td></tr> +<tr bgcolor="yellow"><td>213</td><td>Ohungarumlaut</td><td>Otilde</td><td>Otilde</td></tr> +<tr><td>214</td><td>Odieresis</td><td>Odieresis</td><td>Odieresis</td></tr> +<tr bgcolor="yellow"><td>215</td><td>multiply</td><td>multiply</td><td>multiply</td></tr> +<tr><td>216</td><td>Rcaron</td><td>Oslash</td><td>Oslash</td></tr> +<tr bgcolor="yellow"><td>217</td><td>Uring</td><td>Ugrave</td><td>Ugrave</td></tr> +<tr><td>218</td><td>Uacute</td><td>Uacute</td><td>Uacute</td></tr> +<tr bgcolor="yellow"><td>219</td><td>Uhungarumlaut</td><td>Ucircumflex</td><td>Ucircumflex</td></tr> +<tr><td>220</td><td>Udieresis</td><td>Udieresis</td><td>Udieresis</td></tr> +<tr bgcolor="yellow"><td>221</td><td>Yacute</td><td>Yacute</td><td>Yacute</td></tr> +<tr><td>222</td><td>Tcedilla</td><td>Thorn</td><td>Iogonek</td></tr> +<tr bgcolor="yellow"><td>223</td><td>germandbls</td><td>germandbls</td><td>germandbls</td></tr> +<tr><td>224</td><td>racute</td><td>agrave</td><td>agrave</td></tr> +<tr bgcolor="yellow"><td>225</td><td>aacute</td><td>aacute</td><td>aacute</td></tr> +<tr><td>226</td><td>acircumflex</td><td>acircumflex</td><td>acircumflex</td></tr> +<tr bgcolor="yellow"><td>227</td><td>abreve</td><td>atilde</td><td>atilde</td></tr> +<tr><td>228</td><td>adieresis</td><td>adieresis</td><td>adieresis</td></tr> +<tr bgcolor="yellow"><td>229</td><td>lacute</td><td>aring</td><td>aring</td></tr> +<tr><td>230</td><td>cacute</td><td>cacute</td><td>cacute</td></tr> +<tr bgcolor="yellow"><td>231</td><td>ccedilla</td><td>ccedilla</td><td>ccedilla</td></tr> +<tr><td>232</td><td>ccaron</td><td>egrave</td><td>egrave</td></tr> +<tr bgcolor="yellow"><td>233</td><td>eacute</td><td>eacute</td><td>eacute</td></tr> +<tr><td>234</td><td>eogonek</td><td>eogonek</td><td>eogonek</td></tr> +<tr bgcolor="yellow"><td>235</td><td>edieresis</td><td>edieresis</td><td>edieresis</td></tr> +<tr><td>236</td><td>ecaron</td><td>igrave</td><td>igrave</td></tr> +<tr bgcolor="yellow"><td>237</td><td>iacute</td><td>iacute</td><td>iacute</td></tr> +<tr><td>238</td><td>icircumflex</td><td>icircumflex</td><td>icircumflex</td></tr> +<tr bgcolor="yellow"><td>239</td><td>dquoteright</td><td>idieresis</td><td>idieresis</td></tr> +<tr><td>240</td><td>dbar</td><td>eth</td><td>eth</td></tr> +<tr bgcolor="yellow"><td>241</td><td>nacute</td><td>nacute</td><td>nacute</td></tr> +<tr><td>242</td><td>ncaron</td><td>ograve</td><td>ograve</td></tr> +<tr bgcolor="yellow"><td>243</td><td>oacute</td><td>oacute</td><td>oacute</td></tr> +<tr><td>244</td><td>ocircumflex</td><td>ocircumflex</td><td>ocircumflex</td></tr> +<tr bgcolor="yellow"><td>245</td><td>ohungarumlaut</td><td>otilde</td><td>otilde</td></tr> +<tr><td>246</td><td>odieresis</td><td>odieresis</td><td>odieresis</td></tr> +<tr bgcolor="yellow"><td>247</td><td>divide</td><td>divide</td><td>divide</td></tr> +<tr><td>248</td><td>rcaron</td><td>oslash</td><td>oslash</td></tr> +<tr bgcolor="yellow"><td>249</td><td>uring</td><td>ugrave</td><td>ugrave</td></tr> +<tr><td>250</td><td>uacute</td><td>uacute</td><td>uacute</td></tr> +<tr bgcolor="yellow"><td>251</td><td>uhungarumlaut</td><td>ucircumflex</td><td>ucircumflex</td></tr> +<tr><td>252</td><td>udieresis</td><td>udieresis</td><td>udieresis</td></tr> +<tr bgcolor="yellow"><td>253</td><td>yacute</td><td>yacute</td><td>yacute</td></tr> +<tr><td>254</td><td>tcedilla</td><td>thorn</td><td>iogonek</td></tr> +<tr bgcolor="yellow"><td>255</td><td>dotaccent</td><td>ydieresis</td><td>ydieresis</td></tr> +</table> + +<P><i>Tabelę przedrukowano z Biuletynu GUST, nr 9/1997, +s. 31</i> </i><BR> +<i>Zmodyfikowano 13.09.2004, zgodnie z aktualnym układem QX wer. 0.06 (StaW)</i></P> +<hr> +<A HREF="qx-info.html#P9"><IMG ALIGN="BOTTOM" SRC="./back.gif">Powrót</A> +</body> +</html> diff --git a/info/tex-virtual-academy-pl/fonty/tpstyle.css b/info/tex-virtual-academy-pl/fonty/tpstyle.css new file mode 100644 index 0000000000..7a1260f4bf --- /dev/null +++ b/info/tex-virtual-academy-pl/fonty/tpstyle.css @@ -0,0 +1,7 @@ +/* *** 08-03-1999 *** */ +BODY { background: white; +/* margin-right: 120px; */ + color: black; } +/* font-family: helvetica, arial, sans-serif } */ +H1 {background: white; font-family: helvetica } +H2, H3, H4 {background: white; font-family: helvetica } |