summaryrefslogtreecommitdiff
path: root/info/tex-virtual-academy-pl/fonty/nfss.html
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /info/tex-virtual-academy-pl/fonty/nfss.html
Initial commit
Diffstat (limited to 'info/tex-virtual-academy-pl/fonty/nfss.html')
-rw-r--r--info/tex-virtual-academy-pl/fonty/nfss.html566
1 files changed, 566 insertions, 0 deletions
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&nbsp;sprawa polska</em>, który ukazał się w&nbsp;Biuletynie
+GUST nr&nbsp;10/1998. Cały artykuł dostępny jest na serwerze GUST
+w&nbsp;(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&nbsp;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&nbsp;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&nbsp;operacją wybrania
+fontu załadowanego z&nbsp;konkretnego pliku metrycznego
+i&nbsp;o&nbsp;ustalonej wielkości. (W&nbsp;całym niniejszym tekście słowo
+font będzie używane na określenie takiej właśnie istności. W&nbsp;sensie
+TeXa -- coś załadowanego z&nbsp;konkretnego pliku metrycznego. W&nbsp;sensie
+typograficznym -- pismo o&nbsp;ustalonym kroju, odmianie i&nbsp;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&nbsp;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&nbsp;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&nbsp;rodzaju ,,przełącz font na
+kursywę w&nbsp;bieżącym stopniu''. LaTeX&nbsp;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&nbsp;odmianą pisma. Dodanie
+nowych fontów do zestawu dostępnego w&nbsp;LaTeXu w&nbsp;praktyce wymagało
+ingerencji w plik <code>lfonts.tex</code>, co było zadaniem wyjątkowo
+niewdzięcznym, a&nbsp;ponadto prowadziło do powstawania niezgodnych ze sobą
+lokalnych wersji LaTeXa. </p>
+
+<p>
+ W LaTeXa&nbsp;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&nbsp;użyciu, zarejestrowanie fontów w&nbsp;systemie jest
+elementarne (jeżeli dostępne są pliki opisu fontów -- <em>font descripton
+files</em>) i&nbsp;nie wymaga ingerencji w&nbsp;format LaTeXa, natomiast siłą
+rzeczy stworzenie plików opisu wymaga odrobiny wiedzy o&nbsp;systemie.</p>
+
+<A NAME="opfont">
+<h3>Opis fontu w&nbsp;nowym sposobie wyboru fontów</h3>
+
+<p>
+ W LaTeXu&nbsp;2e bieżący font jest charakteryzowany przez pięć elementów:
+układ (zestaw znaków), krój (rodzinę), grubość i&nbsp;szerokość, odmianę,
+stopień i&nbsp;interlinię. Każdy z&nbsp;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&nbsp;tabelce odpowiadają domyślnym wartościom
+dla dokumentu składanego przy pomocy standardowych klas w&nbsp;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&nbsp;,,zwykłym
+procesorze tekstu'' w&nbsp;tekście po polsku używamy wyrażenia ,,\`a
+propos''. Ponieważ w&nbsp;,,polskim'' foncie nie ma znaku&nbsp;\`a, musimy
+pobrać symbol z&nbsp;fontu ,,zachodniego''. Jeżeli w&nbsp;późniejszym etapie
+opracowania redakcyjnego postanowimy zmienić krój pisma np. z&nbsp;Timesa na
+Helveticę, obca litera pozostanie w&nbsp;starym kroju, bo uzyskując ją nie
+mogliśmy powiedzieć ,,chcę bieżący krój i&nbsp;odmianę, ale w&nbsp;układzie
+zachodnioeuropejskim'', zamiast tego w&nbsp;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&nbsp;stara się użyć fontu o&nbsp;możliwie bliskiej
+charakterystyce. Niektórzy bardzo nie lubią tej własności NFSS, uważając że
+jest to jedno z&nbsp;miejsc, w&nbsp;których LaTeX usiłuje coś (źle) zrobić za
+użytkownika. To zachowanie można zmienić. Użycie w&nbsp;preambule
+deklaracji</p>
+
+<code>
+\usepackage[pausing]{tracefnt}
+</code>
+
+<p>
+ powoduje zamianę wszystkich komunikatów o&nbsp;brakujących fontach
+w&nbsp;komunikaty o&nbsp;błędach, wymagające interwencji użytkownika.</p>
+
+<p>Omówię teraz kolejne parametry opisujące font w&nbsp;NFSS.</p>
+
+<A NAME="uklad"><b>Układ fontu</b> jest najciekawszym elementem, ponieważ wydaje
+się, że LaTeX jest jedynym systemem, w&nbsp;którym pojęcie to występuje
+jawnie. Układ fontu opisuje, jakie znaki są dostępne w&nbsp;foncie
+i&nbsp;w&nbsp;jakich pozycjach. Polecenia akcentowe w&nbsp;LaTeXu
+korzystają z&nbsp;informacji o&nbsp;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&nbsp;foncie
+nie występuje w&nbsp;samym TeXu, LaTeXowy mechanizm układów działa na
+poziomie makr. W&nbsp;związku z&nbsp;tym dotyczy on tylko znaków dostępnych
+poprzez makra. Tabele konwersji kodu wejściowego na poziomie implementacji
+dokonują tłumaczenia od razu w&nbsp;pozycje znaków w&nbsp;foncie, ignorując
+ten mechanizm. Z&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;Cork. Zawiera on znaki umożliwiające skład w&nbsp;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&nbsp;<code>T1</code>), znaki ,,copyright'', ,,registered'' i&nbsp;,,trade
+mark'', liczne symbole walut oraz znaki pauzy o&nbsp;długościach pośrednich
+między ,,endash'' i&nbsp;,,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&nbsp;wielojęzyczność nie ma
+wielkiego zastosowania do formuł matematycznych.</p>
+
+<p>
+ Układy fontów muszą być jawnie deklarowane w&nbsp;dokumencie. Wszystkie
+układy, które będą używane w&nbsp;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&nbsp;<code>OT4</code> (polski)
+wykonujemy:</p>
+<code> \usepackage[OT2,OT4]{fontenc} </code>
+<p>
+Ostatni układ wymieniony w&nbsp;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&nbsp;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&nbsp;<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&nbsp;NFSS trudność stanowi zwykle
+zrozumienie zależności między rodziną a&nbsp;układem fontu. I&nbsp;tak na
+przykład krój Computer Modern Roman (<code>cmr</code>) występuje co najmniej
+w&nbsp;trzech układach. Krój <code>cmr</code> w&nbsp;starym układzie
+tekstowym <code>OT1</code> jest dostępny w&nbsp;oryginalnych fontach Knutha
+o&nbsp;nazwach plikowych np. <code>cmr10</code>, <code>cmbx12</code>,
+<code>cmti9</code>, itd. Krój <code>cmr</code> w&nbsp;układzie polskim
+<code>OT4</code> jest realizowany przez adaptację fontów Knutha, dokonaną
+przez B.&nbsp;Jackowskiego i&nbsp;M.&nbsp;Ryćko. Nazwy plikowe tych fontów
+to np. <code>plr10</code>, <code>plbx12</code>, <code>plti9</code>. Trzecim
+układem, w&nbsp;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&nbsp;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&nbsp;nie rodziny, bo wszystkie one
+zawierają rodziny <code>cmr</code>, <code>cmss</code> i&nbsp;<code>cmtt</code> --
+znaki występujące w&nbsp;każdym z&nbsp;tych fontów mają w&nbsp;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&nbsp;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&nbsp;ogólności grubość i&nbsp;szerokość mogą przebiegać kilkustopniową
+skalę, dając kilkanaście kombinacji opisanych dwuliterowymi kodami.
+Większość krojów występuje jednak tylko w&nbsp;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&nbsp;interlinia.</b><br> Argumentami polecenia
+<code>\fontsize</code> są stopień pisma i&nbsp;interlinia. Domyślną
+jednostką są punkty (amerykańskie), ale w&nbsp;każdym z&nbsp;argumentów można
+też użyć dowolnej jednostki akceptowanej przez TeXa.
+</p>
+
+<p>
+ W&nbsp;TeXu interlinia jest stała dla całego akapitu. Mówiąc ściślej,
+w&nbsp;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&nbsp;interlinię, które występowały również w&nbsp;LaTeXu&nbsp;2.09.
+Poniższa tabela wymienia stopnie odpowiadające poszczególnym poleceniom,
+w&nbsp;zależności od stopnia pisma tekstu podstawowego wybranego
+w&nbsp;<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&nbsp;2.09 <code>\rm</code>,
+<code>\bf</code>, <code>\it</code>, <code>\sl</code>, <code>\sc</code>,
+<code>\ss</code> i&nbsp;<code>\tt</code>. Ale uwaga: zachowują
+się one dokładnie tak jak w&nbsp;LaTeXu&nbsp;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&nbsp;dokumencie. Ponieważ mieszanie różnych krojów szeryfowych
+w&nbsp;jednym dokumencie w&nbsp;zasadzie jest błędem (a&nbsp;przynajmniej
+powinno być wynikiem przemyślanej decyzji), w&nbsp;schemacie przyjętym przez
+standardowe klasy dokumentów dostępny jest jeden krój szeryfowy, jeden
+bezszeryfowy i&nbsp;jeden grotesk. Oczywiście domyślnie są to Computer
+Modern Roman, Computer Modern Sansserif i&nbsp;Computer Modern Typewriter.
+</p>
+
+<p>
+Oto podstawowe polecenia wyboru krojów i&nbsp;odmian w&nbsp;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&nbsp;podobnej funkcjonalności. Wersje
+z&nbsp;argumentem składają ten argument pismem wybranym przez swój
+odpowiednik bez argumentu. Ponadto polecenia te na granicy między pismem
+pochyłym a&nbsp;prostym dodają kompensatę wychylenia ostatniego znaku
+(<em>italic correction</em>), chyba że następnym znakiem jest kropka lub
+przecinek i&nbsp;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&nbsp;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&nbsp;LaTeXu złożyć dokument, używając jako
+kroju szeryfowego Timesa, wystarczy:</p>
+<code>
+\renewcommand\rmdefault{ptm}
+</code>
+<p>
+ (Polecenia zapożyczone z&nbsp;LaTeXa&nbsp;2.09 działają w&nbsp;podobny,
+pośredni sposób, więc również konsekwentnie poddają się takiemu
+przedefiniowaniu.) </p>
+
+<p>
+Wartości domyślne wkraczają jeszcze w&nbsp;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&nbsp;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&nbsp;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&nbsp;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&nbsp;stopnie pisma są dostępne i&nbsp;w&nbsp;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&nbsp;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&nbsp;tym pliku zawarte są informacje, jakie akcenty są dostępne
+w&nbsp;danym układzie, w&nbsp;jakich pozycjach się one znajdują i&nbsp;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&nbsp;plików <code>.fd</code> przy
+pierwszej próbie użycia fontu z&nbsp;danej rodziny w&nbsp;danym układzie. Na
+przykład po zadeklarowaniu jako domyślnego układu <code>OT4</code>, pierwsza
+próba włączenia fontu z&nbsp;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&nbsp;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>&nbsp;<em>medium</em>), prostą
+(<code>n</code>&nbsp;<em>normal</em>) -- dla stopni&nbsp;5, 6, 7, 8, 9, 10
+i&nbsp;12 należy użyć fontu o&nbsp;nazwie plikowej powstającej z&nbsp;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&nbsp;<code>plr17</code>. Druga klauzula
+<code>\DeclareFontShape</code> opisuje grubą (<code>bx</code>&nbsp;<em>bold
+extended</em>) kursywę (<code>it</code> <em>italic</em>) -- dla stopni
+mniejszych od 10pt należy użyć w&nbsp;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&nbsp;<code>T1</code> oraz opis rodziny
+<code>cmr</code> w&nbsp;tych układach są wbudowywane w&nbsp;format razem
+z&nbsp;plikami metrycznymi podstawowych fontów. Służy to przyspieszeniu
+ładowania LaTeXa na początku przetwarzania dokumentu. Zestaw wbudowanych
+układów, rodzin i&nbsp;plików metrycznych można zmienić przy pomocy plików
+konfiguracyjnych <code>fonttext.cfg</code> i&nbsp;<code>preload.cfg</code> --
+szczegóły opisano w&nbsp;dokumencie <code>cfgguide.tex</code>. </p>
+
+<p>
+ Aby można było powiedzieć, że font jest zainstalowany w&nbsp;LaTeXu musi
+istnieć dla niego definicja układu i&nbsp;definicja kroju (rodziny)
+w&nbsp;tym układzie. Układów w&nbsp;zasadzie jest skończona niewielka liczba
+i&nbsp;definicje większości z&nbsp;nich są zawarte w&nbsp;dystrybucji LaTeXa
+(w&nbsp;tym <code>OT4</code>). Natomiast dla każdego kroju potrzebny jest
+jego opis w&nbsp;pliku o&nbsp;nazwie zbudowanej z&nbsp;nazwy układu
+i&nbsp;nazwy rodziny z&nbsp;rozszerzeniem <code>.fd</code> (wszystko małymi
+literami). Pliki te muszą znajdować się w&nbsp;katalogu widocznym dla
+LaTeXa. </p>
+
+<p>
+ Pliki opisu dla fontów PL i&nbsp;PC są zawarte w&nbsp;pakiecie PLaTeX. Pliki
+opisu dla kroju Quasi Palladio (<code>qpl</code>), Quasi Times
+(<code>qtm</code>) i&nbsp;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>
+