a
E
Rzut oka na system składu TEX
X
T
E
u
d
a
ł
k
s
m
e
t
s
y
s
a
n
a
k
o
t
u
z
R
Rzut oka na system składu TEX
Rzut oka na system składu TEX
Jan Jełowicki
Wrocław 2006
Rzut oka na system składu TEX 1
Prehistoria
pismo 3000 r. pne
książka/zwój 3000 r. pne
kanony estetyczne książki ok. I w. pne
książka/kodeks I IV w. ne
stempel drukarski VII w. (Chiny), XV w. (Europa)
czcionka drukarska 1440 r.
monotyp (odlewanie wierszy) 1884 r.
linotyp (odlewanie kolumn) 1887 r.
druk offsetowy 1903 r.
fotoskład I poł. XX w.
skład komputerowy II poł. XX w.
systemy DTP 1970 r. (Xerox)
formalny opis budowy dokumentu lata 1980-te ( , TEX)
Rzut oka na system składu TEX 2
Jak to się zaczęło
Lata 1970-te: Donald E. Knuth pisze Art of Computer Program-
ming. Nieusatysfakcjonowany jakością składu oferowaną przez
wydawcę tworzy własny system składu. Praca trwa do roku
1986.
Założenia TEX-a zostały przedstawione na zjezdzie AMS w roku
1977.
Literary programming: integracja procesów programowania i do-
kumentowania algorytmu . . . to treat a program as a piece of
literature, addressed to human beings rather than to a computer
(Knuth).
METAFONT: system generowania fontów z opisu obwiedniowego.
TEX nie wziął się z kosmosu: czerpie z tradycji typograficznej i z notacji programi-
stycznych. Zastosowane algorytmy są pionierskie. Narzędzia: Web + Pascal.
Licencja: Open Source, public domain, z zastrzeżeniem nazw: TEX, METAFONT.
Po 1986 r.: American Mathematical Society uznaje TEX-a jako podstawowy system
A
składu swoich publikacji. Zestaw typowych formatów (LTEX, AMS-TEX) i aplikacji
towarzyszących (B TEX, dvips, makeindex).
Lata 1990-te: Translacja bibliotek Web na platformę C. Standard dystrybucji użytko-
wych (TEX Directory Structure) i kanon rozszerzeń TEX-a: TEX format wyjścio-
wy , Omega wejście , METAPOST język opisu grafiki wektorowej.
Lata 2000-te: a TEX. TEX a . Fonty dynamiczne. Przyszłość.
Rzut oka na system składu TEX 3
Perfekcjonizm
Unikalny algorytm składu drukarskiego
TEX jest starannie zaprojektowanym systemem przeznaczonym do generowania skła-
du typograficznego najwyższej jakości. Czerpie z kilkuset lat tradycji typograficznej.
Numeracja wersji
Kolejne wersje numerowane przybliżeniami dziesiętnymi liczby Ą, począwszy od 3.
Ostatnia poprawka: rok 2008.
Ą
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1415926
3
Bieżąca wersja TEX-a: 3.1415926.
Bieżąca wersja formatu plain TEX: 3.1415926.
Wersja asymptotyczna: Ą będzie z definicji wolna od błędów.
Nagrody
Za wskazanie błędu w programie TEX: 327.68$
Za wskazanie błędu w książkach DEK: 2.56$
Rzut oka na system składu TEX 4
TEX jako system DTP
algorytm
biała skrzynka?
aplikacja? czarna skrzynka?
interfejs format
Wady (?)
" brak UI (odstrasza potencjalnych użytkowników)
" specyficzna filozofia programowania
" orientacja na typografię (w porównaniu z formatami abstrakcyjnymi, np. z )
" jeden dokument wiele plików
" brak pełnego wsparcia dla eliminacji korytarzy
" 256-znakowe fonty (nie dotyczy Omega)
" bitmapowy opis fontów (używany przez tradycyjne sterowniki dvi)
" słaby w oblewaniu ramek tekstem (infografika, kolorowe tygodniki )
Zalety (?)
więcej niż wad. . .
Rzut oka na system składu TEX 5
TEX jako system DTP zalety (?)
" brak UI (nie potrzebuje interfejsu, może pracować w potoku)
" brak UI (niezależny od interfejsu, może współpracować z dowolnym edytorem)
" unikalnie wysoka jakość składu
" składanie akapitów jako całości
" kerning w opisie fontu
" stosowanie ligatur ujętych w foncie
" obsługa notcaji matematycznej bliska perfekcji
" automatyzacja numerowania i odsyłaczy
" obsługa aparatu naukowego (przypisy, bibliografie)
" niezależność od kodowania wejścia (7-bitowe, , , zmienne)
" niezależność od kodowania fontu
" rozszerzalność, możliwość lokalizacji (z kierunkiem pisma włącznie eTEX)
" przenośność (Amiga, DOS, MacOS, OS/2, UNIX, VMS, Windows, . . . )
" niezawodność, przewidywalność i stabilność wszystko(!) jest pod kontrolą
" elegancja i swoiste piękno języka
" warunki licencji
Rzut oka na system składu TEX 6
Schemat działania
Wejście plik zródłowy dokumentu z dyrektywami składu (lub zestaw takich plików)
Wyjście plik z opisem składu dokumentu (dvi = Device Independent)
plik z wektorowym opisem wydruku ( , )
plik zródłowy pliki pomocnicze
proces twórczy + edycja pliku
kompilacja tex
autor
(tex) (aux, toc, . . . )
kompilacja tex kompilacja pdftex
kompilacja tex
plik diagnostyczny plik pośredni wektorowy opis wydruku
postprocesor (dvips)
(log) (dvi) (ps, pdf)
przeglądarki dvi
postprocesor dvi przeglądarki ps/pdf
procesor ps/pdf
obraz na monitorze wydruk papierowy czytanie online
odbiorca
Sposoby użycia
Do trwałego przechowywania kodu zródłowego dokumentu
Użytkownik traktuje pliki TEX-owe jako materiał zródłowy swoich dokumentów.
Jako stadium przejściowe procesu przetwarzania
Automat generuje kod TEX-owy z danych innych formatów (bazy danych, ,
) bez ingerencji ludzkiej.
Rzut oka na system składu TEX 7
Sterowanie
Tekst i dyrektywy składu są czytane sekwencyjnie z jednego strumienia wejściowego.
Gotowe strony składu nie obciążają pamięci.
Ciągi sterujące rozpoczynają się od znaku sterującego (domyślnie \).
Przykłady: \, \" \\
Słowa sterujące rozpoczynają się od znaku sterującego, składają się z liter.
Przykłady: \tolerance \break \rm \def
Makropolecenia polecenia sterowania definiowane za pomocą poleceń sterowania.
Przykłady: \def\nazwapliku#1{\texttt{#1}}
\def\pauza{\unskip\kern.2em\textemdash\hskip.2em\ignorespaces}
Makra są rozwijane w chwili użycia.
Parametry poleceń
Przykłady: \makebox{trutututu} \centerline{Tratatata}
\nazwapliku{/etc/passwd}
Lokalność zakres deklaracji jest ograniczony do grupy.
Przykład: Przejście z antykwy {\it na kursywę\/} jest chwilowe.
Rzut oka na system składu TEX 8
Pojęcia podstawowe
Znaki i kategorie znaków
0. znak sterujący \ 8. frakcja dolna _
1. początek grupy { 9. znak ignorowany
2. koniec grupy } a. spacja
3. tryb matematyczny $ b. litera
4. tabulator & c. inne znaki
5. koniec wiersza d. znak aktywny ~
6. symbol parametru # e. znak komentarza %
7. frakcja górna ^ f. znak niedozwolony
Każdemu znakowi z wejścia przydziela się w chwili odczytu kategorię.
Kategorii danego egzemplarza znaku nie zmienia się.
Żeton (token): para (znak, kategoria) lub ciąg sterujący. TEX przetwarza ciągi żeto-
nów.
Pudełko (box):
Klej (glue): poziomy (\kern,\hskip) "! , pionowy (\vskip)
sztywny (długość), elastyczny (długość plus d1 minus d2), rozciągliwy (\fill).
Rzut oka na system składu TEX 9
Tryby składu
Tak --- \TeX\ to jest poważna sprawa.
Tak
TEX
to
pionowy
jest
powa żna
spr awa
.
poziomy Tak TEX t o je st poważ na s pra wa.
Tak TEX to
jest powa żna
akapitowy
spr awa.
$x / \sqrt{x^2 + y^2} = \cos \phi$
matematyczny
x / x2 + y2 = cos Ć
Rzut oka na system składu TEX 10
Fonty
Czcionka: materialny nośnik znaku + justunek
Font: elektroniczny nośnik informacji o komplecie znaków pisma i jego otoczce
użytkowej
Wektor kodowania: numeracja znaków fontu zgodnie z kolejnością zamieszczenia
Metryka: opis wielkości prostokątów mieszczących znaki
Podczas tworzenia składu TEX-a interesuje przede wszystkim metryka fontu.
Kerning: regulacja światła międzyznakowego wewnątrz wyrazów
WAŻNA Treść przekazu
WAŻNA Treść przekazu
TEX domyślnie bierze pod uwagę kerning zdefiniowany w opisie fontu.
Glif: rysunek znaku
- WAŻNA Treść przekazu
Kształty są brane pod uwagę dopiero na etapie generowania wydruku ze składu.
Rzut oka na system składu TEX 11
Fonty c.d.
Spójki, czyli ligatury: jeden znak pisma użyty w miejsce kilku znaków przekazu.
fiolka flaszka mu a Phćton
fiolka flaszka mufka Phaeton
Spójki w szerszym sensie: zastąpienie kilku znaków wejścia jednym symbolem.
,,zwykły --- >>niezwykły<< -- !fikuśny!
zwykły niezwykły !fikuśnyĄ
TEX automatycznie uwzględnia ligatury opisane w foncie jako standardowe .
Formaty fontów:
rastrowe (TEX-a) (Adobe) (częściowo)
Dostępne fonty
Fonty TEX-owe: Computer Modern, , , . . .
Fonty PostScriptowe (Type1): Times, Helvetica, Bookman, . . . ,
Antykwa Półtawskiego, Antykwa Toruńska
Fonty systemowe: TrueType i OpenType częściowo (XeTEX)
Rzut oka na system składu TEX 12
Skład tekstu ciągłego
TEX automatycznie stosuje wcięcia i odstępy zadane jako parametry składu.
Przykład:
\nonfrenchspacing \parskip 0pt\parindent 1em\input{tekst}
Jak wykryć, czy dane zostały sfałszowane, czy nie? Czy repertuar statystyczny
zawiera metody sygnalizujące, że dane nie są prawdziwe? Na szczęście tak.
Rzeczywiście, w ciągu ostatnich lat statystycy zbadali zbiory danych utworzone i wy-
korzystywane przez niektórych słynnych naukowców i odkryli, że nie wszyscy byli
tacy uczciwi i nie zawsze otrzymywali wyniki, o których donosili . Haldane (1948)
stwierdził: Człowiek jest zwierzęciem uporządkowanym. Nie umie imitować niepo-
rządku natury .
\nonfrenchspacing: ostrożnie z .:;! C. R. Rao: Statystyka i prawda. Warszawa 1994, str. 76
C. R. Rao: Statystyka i prawda. Warszawa 1994, str. 76
\frenchspacing \parskip 1ex\parindent 0pt\input{tekst}
Jak wykryć, czy dane zostały sfałszowane, czy nie? Czy repertuar statystyczny zawiera
metody sygnalizujące, że dane nie są prawdziwe? Na szczęście tak.
Rzeczywiście, w ciągu ostatnich lat statystycy zbadali zbiory danych utworzone i wy-
korzystywane przez niektórych słynnych naukowców i odkryli, że nie wszyscy byli
tacy uczciwi i nie zawsze otrzymywali wyniki, o których donosili . Haldane (1948)
stwierdził: Człowiek jest zwierzęciem uporządkowanym. Nie umie imitować niepo-
rządku natury .
C. R. Rao: Statystyka i prawda. Warszawa 1994, str. 76
Rzut oka na system składu TEX 13
A
Wybrane parametry składu (L TEX)
1 cal + \topmargin
główka strony
\headsep
\parindent
\parskip
\parindent
1 cal + \oddsidemargin
(odp. \evensidemargin)
\parskip
\parindent
\textwidth
Rzut oka na system składu TEX 14
Skład akapitów
TEX składa akapit jako całość (podobnie jak dobry zecer), starając się zminimalizować
karę za odchyłkę od idealnego składu.
Przykład składu TEX-owego (C. R. R : Statystyka i prawda. Warszawa 1994, str. 76)
Jak wykryć, czy dane zostały sfałszowane, czy nie? Czy repertuar sta-
tystyczny zawiera metody sygnalizujące, że dane nie są prawdziwe?
Na szczęście tak. Rzeczywiście, w ciągu ostatnich lat statystycy zba-
dali zbiory danych utworzone i wykorzystywane przez niektórych słyn-
nych naukowców i odkryli, że nie wszyscy byli tacy uczciwi i nie za-
wsze otrzymywali wyniki, o których donosili . Haldane (1948) stwier-
dził: Człowiek jest zwierzęciem uporządkowanym. Nie umie imitować
nieporządku natury .
Jak wykryć, czy dane zostały sfałszowane, czy nie? Czy repertuar sta-
tystyczny zawiera metody sygnalizujące, że dane nie są prawdziwe? Na
szczęście tak. Rzeczywiście, w ciągu ostatnich lat statystycy zbadali
zbiory danych utworzone i wykorzystywane przez niektórych słynnych
naukowców i odkryli, że nie wszyscy okazali się całkowicie uczciwi
i nie zawsze otrzymywali wyniki, o których donosili . Haldane (1948)
stwierdził: Człowiek jest zwierzęciem uporządkowanym. Nie umie imi-
tować nieporządku natury .
Rzut oka na system składu TEX 15
Skład akapitów c.d.
Zwykły procesor dokumentów składa akapit sekwencyjnie wiersz po wierszu
(spacje międzywyrazowe w trybie justowania są elastyczne).
Bieżący wiersz nie ma wpływu na sposób złożenia wcześniejszych partii akapitu.
Przykład składu w systemie WYSIWYG
Jak wykryć, czy dane zostały sfałszowane, czy nie? Czy repertuar sta-
tystyczny zawiera metody sygnalizujące, że dane nie są prawdziwe?
Na szczęście tak. Rzeczywiście, w ciągu ostatnich lat statystycy zba-
dali zbiory danych utworzone i wykorzystywane przez niektórych słyn-
nych naukowców i odkryli, że nie wszyscy byli tacy uczciwi i nie za-
wsze otrzymywali wyniki, o których donosili . Haldane (1948) stwier-
dził: Człowiek jest zwierzęciem uporządkowanym. Nie umie imitować
nieporządku natury .
Jak wykryć, czy dane zostały sfałszowane, czy nie? Czy repertuar sta-
tystyczny zawiera metody sygnalizujące, że dane nie są prawdziwe?
Na szczęście tak. Rzeczywiście, w ciągu ostatnich lat statystycy zba-
dali zbiory danych utworzone i wykorzystywane przez niektórych słyn-
nych naukowców i odkryli, że nie wszyscy okazali się całkowicie ucz-
ciwi i nie zawsze otrzymywali wyniki, o których donosili . Haldane
(1948) stwierdził: Człowiek jest zwierzęciem uporządkowanym. Nie
umie imitować nieporządku natury .
Rzut oka na system składu TEX 16
Skład akapitów c.d.
Proces składania akapitu jest wieloetapowy:
1. skład wstępny (\pretolerance), bez dzielenia słów 2. skład ostateczny
Parametrami składu można precyzyjnie sterować.
Wpływ parametów składu na wynik
\pretolerance10 \tolerance10 \pretolerance10 \tolerance20
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfał-
wane, czy nie? Czy repertuar statystycz- szowane, czy nie? Czy repertuar staty-
ny zawiera metody sygnalizujące, że da- styczny zawiera metody sygnalizujące,
ne nie są prawdziwe? Na szczęście tak. że dane nie są prawdziwe? Na szczęście
Rzeczywiście, w ciągu ostatnich lat tak.
statystycy zbadali zbiory danych utwo- Rzeczywiście, w ciągu ostatnich lat
rzone i wykorzystywane przez niektó- statystycy zbadali zbiory danych utwo-
rych słynnych naukowców i odkryli, że rzone i wykorzystywane przez niektórych
nie wszyscy byli tacy uczciwi i nie za- słynnych naukowców i odkryli, że nie
wsze otrzymywali wyniki, o których do- wszyscy byli tacy uczciwi i nie zawsze
nosili . Haldane (1948) stwierdził: Czło- otrzymywali wyniki, o których donosili .
wiek jest zwierzęciem uporządkowanym. Haldane (1948) stwierdził: Człowiek jest
Nie umie imitować nieporządku natury . zwierzęciem uporządkowanym. Nie umie
imitować nieporządku natury .
Rzut oka na system składu TEX 17
\pretolerance10 \tolerance50 \pretolerance10 \tolerance20\looseness-100
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfałszo-
wane, czy nie? Czy repertuar statystycz- wane, czy nie? Czy repertuar statystycz-
ny zawiera metody sygnalizujące, że da- ny zawiera metody sygnalizujące, że da-
ne nie są prawdziwe? Na szczęście tak. ne nie są prawdziwe? Na szczęście tak.
Rzeczywiście, w ciągu ostatnich lat Rzeczywiście, w ciągu ostatnich lat
statystycy zbadali zbiory danych utwo- statystycy zbadali zbiory danych utwo-
rzone i wykorzystywane przez niektórych rzone i wykorzystywane przez niektórych
słynnych naukowców i odkryli, że nie słynnych naukowców i odkryli, że nie
wszyscy byli tacy uczciwi i nie zawsze wszyscy byli tacy uczciwi i nie zawsze
otrzymywali wyniki, o których donosili . otrzymywali wyniki, o których donosili .
Haldane (1948) stwierdził: Człowiek jest Haldane (1948) stwierdził: Człowiek jest
zwierzęciem uporządkowanym. Nie umie zwierzęciem uporządkowanym. Nie umie
imitować nieporządku natury . imitować nieporządku natury .
\pretolerance10 \tolerance20 \pretolerance10 \tolerance20\looseness1
Jak wykryć, czy dane zostały sfał- Jak wykryć, czy dane zostały sfał-
szowane, czy nie? Czy repertuar staty- szowane, czy nie? Czy repertuar staty-
styczny zawiera metody sygnalizujące, styczny zawiera metody sygnalizujące,
że dane nie są prawdziwe? Na szczęście że dane nie są prawdziwe? Na szczęście
tak. tak.
Rzeczywiście, w ciągu ostatnich lat Rzeczywiście, w ciągu ostatnich lat
statystycy zbadali zbiory danych utwo- statystycy zbadali zbiory danych utwo-
rzone i wykorzystywane przez niektórych rzone i wykorzystywane przez niektórych
słynnych naukowców i odkryli, że nie słynnych naukowców i odkryli, że nie
wszyscy byli tacy uczciwi i nie zawsze wszyscy byli tacy uczciwi i nie zawsze
otrzymywali wyniki, o których donosili . otrzymywali wyniki, o których dono-
Haldane (1948) stwierdził: Człowiek jest sili . Haldane (1948) stwierdził: Czło-
zwierzęciem uporządkowanym. Nie umie wiek jest zwierzęciem uporządkowanym.
imitować nieporządku natury . Nie umie imitować nieporządku natu-
ry .
Rzut oka na system składu TEX 18
\pretolerance100 \tolerance100 \pretolerance100 \tolerance200
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfałszo-
wane, czy nie? Czy repertuar statystycz- wane, czy nie? Czy repertuar statystycz-
ny zawiera metody sygnalizujące, że da- ny zawiera metody sygnalizujące, że da-
ne nie są prawdziwe? Na szczęście tak. ne nie są prawdziwe? Na szczęście tak.
Rzeczywiście, w ciągu ostatnich lat Rzeczywiście, w ciągu ostatnich lat
statystycy zbadali zbiory danych utwo- statystycy zbadali zbiory danych utwo-
rzone i wykorzystywane przez niektórych rzone i wykorzystywane przez niektórych
słynnych naukowców i odkryli, że nie słynnych naukowców i odkryli, że nie
wszyscy byli tacy uczciwi i nie zawsze wszyscy byli tacy uczciwi i nie zawsze
otrzymywali wyniki, o których donosili . otrzymywali wyniki, o których donosili .
Haldane (1948) stwierdził: Człowiek jest Haldane (1948) stwierdził: Człowiek jest
zwierzęciem uporządkowanym. Nie umie zwierzęciem uporządkowanym. Nie umie
imitować nieporządku natury . imitować nieporządku natury .
\pretolerance100 \tolerance500 \pretolerance100 \tolerance200\looseness-100
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfał-
wane, czy nie? Czy repertuar statystycz- szowane, czy nie? Czy repertuar staty-
ny zawiera metody sygnalizujące, że da- styczny zawiera metody sygnalizujące, że
ne nie są prawdziwe? Na szczęście tak. dane nie są prawdziwe? Na szczęście tak.
Rzeczywiście, w ciągu ostatnich lat Rzeczywiście, w ciągu ostatnich lat
statystycy zbadali zbiory danych utwo- statystycy zbadali zbiory danych utwo-
rzone i wykorzystywane przez niektórych rzone i wykorzystywane przez niektórych
słynnych naukowców i odkryli, że nie słynnych naukowców i odkryli, że nie
wszyscy byli tacy uczciwi i nie zawsze wszyscy byli tacy uczciwi i nie zawsze
otrzymywali wyniki, o których donosili . otrzymywali wyniki, o których donosili .
Haldane (1948) stwierdził: Człowiek jest Haldane (1948) stwierdził: Człowiek jest
zwierzęciem uporządkowanym. Nie umie zwierzęciem uporządkowanym. Nie umie
imitować nieporządku natury . imitować nieporządku natury .
Rzut oka na system składu TEX 19
\pretolerance100 \tolerance200 \pretolerance100 \tolerance200\looseness1
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfał-
wane, czy nie? Czy repertuar statystycz- szowane, czy nie? Czy repertuar staty-
ny zawiera metody sygnalizujące, że da- styczny zawiera metody sygnalizujące,
ne nie są prawdziwe? Na szczęście tak. że dane nie są prawdziwe? Na szczęście
Rzeczywiście, w ciągu ostatnich lat tak.
statystycy zbadali zbiory danych utwo- Rzeczywiście, w ciągu ostatnich lat
rzone i wykorzystywane przez niektórych statystycy zbadali zbiory danych utwo-
słynnych naukowców i odkryli, że nie rzone i wykorzystywane przez niektórych
wszyscy byli tacy uczciwi i nie zawsze słynnych naukowców i odkryli, że nie
otrzymywali wyniki, o których donosili . wszyscy byli tacy uczciwi i nie za-
Haldane (1948) stwierdził: Człowiek jest wsze otrzymywali wyniki, o których
zwierzęciem uporządkowanym. Nie umie donosili . Haldane (1948) stwierdził:
imitować nieporządku natury . Człowiek jest zwierzęciem uporządko-
wanym. Nie umie imitować nieporządku
natury .
\pretolerance1000 \tolerance1000 \pretolerance1000 \tolerance2000
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfałszo-
wane, czy nie? Czy repertuar statystycz- wane, czy nie? Czy repertuar statystycz-
ny zawiera metody sygnalizujące, że da- ny zawiera metody sygnalizujące, że da-
ne nie są prawdziwe? Na szczęście tak. ne nie są prawdziwe? Na szczęście tak.
Rzeczywiście, w ciągu ostatnich lat Rzeczywiście, w ciągu ostatnich lat
statystycy zbadali zbiory danych utwo- statystycy zbadali zbiory danych utwo-
rzone i wykorzystywane przez niektórych rzone i wykorzystywane przez niektórych
słynnych naukowców i odkryli, że nie słynnych naukowców i odkryli, że nie
wszyscy byli tacy uczciwi i nie zawsze wszyscy byli tacy uczciwi i nie zawsze
otrzymywali wyniki, o których donosili . otrzymywali wyniki, o których donosili .
Haldane (1948) stwierdził: Człowiek jest Haldane (1948) stwierdził: Człowiek jest
zwierzęciem uporządkowanym. Nie umie zwierzęciem uporządkowanym. Nie umie
imitować nieporządku natury . imitować nieporządku natury .
Rzut oka na system składu TEX 20
\pretolerance1000 \tolerance5000 \pretolerance1000 \tolerance2000\looseness-100
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfał-
wane, czy nie? Czy repertuar statystycz- szowane, czy nie? Czy repertuar staty-
ny zawiera metody sygnalizujące, że da- styczny zawiera metody sygnalizujące, że
ne nie są prawdziwe? Na szczęście tak. dane nie są prawdziwe? Na szczęście tak.
Rzeczywiście, w ciągu ostatnich lat Rzeczywiście, w ciągu ostatnich lat
statystycy zbadali zbiory danych utwo- statystycy zbadali zbiory danych utwo-
rzone i wykorzystywane przez niektórych rzone i wykorzystywane przez niektórych
słynnych naukowców i odkryli, że nie słynnych naukowców i odkryli, że nie
wszyscy byli tacy uczciwi i nie zawsze wszyscy byli tacy uczciwi i nie zawsze
otrzymywali wyniki, o których donosili . otrzymywali wyniki, o których donosili .
Haldane (1948) stwierdził: Człowiek jest Haldane (1948) stwierdził: Człowiek jest
zwierzęciem uporządkowanym. Nie umie zwierzęciem uporządkowanym. Nie umie
imitować nieporządku natury . imitować nieporządku natury .
\pretolerance1000 \tolerance2000 \pretolerance1000 \tolerance2000\looseness1
Jak wykryć, czy dane zostały sfałszo- Jak wykryć, czy dane zostały sfał-
wane, czy nie? Czy repertuar statystycz- szowane, czy nie? Czy repertuar staty-
ny zawiera metody sygnalizujące, że da- styczny zawiera metody sygnalizujące,
ne nie są prawdziwe? Na szczęście tak. że dane nie są prawdziwe? Na szczęście
Rzeczywiście, w ciągu ostatnich lat tak.
statystycy zbadali zbiory danych utwo- Rzeczywiście, w ciągu ostatnich lat
rzone i wykorzystywane przez niektórych statystycy zbadali zbiory danych utwo-
słynnych naukowców i odkryli, że nie rzone i wykorzystywane przez niektó-
wszyscy byli tacy uczciwi i nie zawsze rych słynnych naukowców i odkryli, że
otrzymywali wyniki, o których donosili . nie wszyscy byli tacy uczciwi i nie za-
Haldane (1948) stwierdził: Człowiek jest wsze otrzymywali wyniki, o których do-
zwierzęciem uporządkowanym. Nie umie nosili . Haldane (1948) stwierdził: Czło-
imitować nieporządku natury . wiek jest zwierzęciem uporządkowanym.
Nie umie imitować nieporządku natu-
ry .
Rzut oka na system składu TEX 21
Skład akapitów przenoszenie wyrazów
Wzorce przenoszenia związane z językiem są wczytywane z formatu TEX-a.
Zmiana języka (nawet lokalna) wymusza zmianę wzorców przenoszenia na ogół
automatycznie (\language, \selectlanguage).
Dodatkowe wzorce (wyjątki) definiowane w obrębie dokumentu:\hyphenation,
np. \hyphenation{ap-rok-sy-ma-cja ap-rok-sy-ma-cyj-ny}
Lokalne pozwolenie na złamanie wyrazu wstawia się poleceniem \- bezpośred-
nio do tekstu, np. ap\-rok\-sy\-ma\-cyj\-ny
Kara za złamanie wyrazu zależy od bieżącej wartości \hyphenpenalty
Zaawansowane techniki dzielenia słów: \discretionary,
A
np. \def\dywiz{\discretionary{-}{-}{-}} (LTEX/polski)
czarno\dywiz biały czarno-biały czarno-
-biały
Zakaz złamania słowa/frazy: tryb poziomy, np. \hbox{\LaTeX-owi}
lub \hyphenpenalty10000
Nakaz zakończenia wiersza:
A
\cr, \break (TEX); \\, \newline, \linebreak (LTEX)
Rzut oka na system składu TEX 22
Skład akapitów zaawansowane możliwości
Niestandardowe kształty akapitów: możliwość definiowania
Tricki mikrotypograficzne: wisząca interpunkcja, regulacja światła międzylitero-
wego, dostrajanie szerokości znaków
Analizatory składni innych języków: automatyczne kolorowanie składni języków
formalnych (ważne w listingach kodu)
. . .
Rzut oka na system składu TEX 23
Warstwy poleceń sterowania
Droga od pojęć pierwotnych do złożonych (Knuth, The TEXbook, str. 203).
The ideal is to be able to describe important classes of documents in terms of
their components, without mentioning actual fonts or point sizes or detail
of spacing; a single style-independent document can then be set in many
different styles.
Zwykły użytkownik korzysta z poleceń wysokiego poziomu.
Polecenia pierwotne
Ok. 300 poleceń wbudowanych w TEX-a, np.
\catcode \hbox \penalty \def
\kern \vbox \tolerance \csname
\fill \par \font \input
\if...\else...\fi \parskip \left...\right \end
\baselineskip \parindent . . .
Formaty
Wstępnie skompilowane gotowe do użycia zestawy makropoleceń.
A
Podstawowe formaty: plain TEX, LTEX, AMS-TEX, ConTEXt;
A
w Polsce także MEX i pLTEX.
Rzut oka na system składu TEX 24
Format plain TEX (Knuth)
Podstawowy zbiór ok. 600 poleceń związanych z typografią.
Przykładowe polecenia plain TEX-a
\rm \bf \bf \it \glue \break \centerline \tenrm \bigskip
\frenchspacing \sqrt . . .
Przykładowy plik zródłowy
%&tex --translate-file=il2-pl
\input fonty
\centerline{\xivrm Statystyka i~prawda}\medskip
\centerline{C.\,Radhakrishna Rao}\bigskip
{\ninerm \centerline{\bf Streszczenie} \medskip\leftskip2em
Wariacje na~temat składu akapitów.\par} \bigskip
\noindent{\xivbf O~fałszowaniu danych} \bigskip
\input{include/rao}
\end
Polecenie kompilacji: $ tex dokument
Rzut oka na system składu TEX 25
A
Format L TEX (Leslie Lamport)
Zbiór poleceń pomocnych przy opisie budowy logicznej dokumentów.
A
Przykładowe polecenia LTEX-a
\documentclass \title \chapter \section \author . . .
Otoczenia opisy obiektów wstawiane za pomocą pary znaczników
\begin{nazwa}...\end{nazwa}, na przykład:
document theorem enumerate equation tabular . . .
Przykładowy plik zródłowy
\documentclass[a4paper,12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[latin2]{inputenc}
\usepackage{polski}
\title{Statystyka i~prawda} \author{C.\,Radhakrishna Rao} \date{}
\begin{document} \maketitle
\begin{abstract}Wariacje na~temat składu akapitów.\end{abstract}
\section*{O~fałszowaniu danych} \input{include/rao}
\end{document}
Polecenie kompilacji: $ latex dokument
Rzut oka na system składu TEX 26
Inne formaty
AMS-TEX (American Mathematical Society),
MEX polonizacja plain TEX-a (B. Jackowski i M. Ryćko GUST),
A A
pLTEX polonizacja LTEX-a (M. Olko i M. Woliński GUST),
ConTEXt separacja języka opisu struktury od języka opisu stylów (jak i ),
A
Lambda odpowiednik LTEX-a dla Omega,
Inne: formaty prywatne wydawnictw, ośrodków, użytkowników, . . .
Integracja różnych form przekazu
Grafika
Prezentacja grafiki w różnych formatach ( , , formaty rastrowe): realizacja
przez procesory u.
Hipertekst
Odsyłacze hipertekstowe, generowanie hipertekstowych dokumentów elektronicz-
nych: realizacja przez sterowniki dla formatów wynikowych ( , , ).
Rzut oka na system składu TEX 27
Kodowanie znaków tekstu wejściowego
Plik zródłowy może być kodowany dowolnie: , rozszerzenia , , inne
kodowania. Fragmenty dokumentu mogą różnić się pod względem kodowania.
Poziom niski, czyli ostateczność: każdy znak nie- ujęty w używanych fontach
(oraz niektóre znaki spoza fontów) da się wygenerować za pomocą poleceń.
\ a \ a \"a \^a \~a \=a \k{a} \.a \H{a}\c{a} \l
ą ć ą a a a ł
Ł Ż
TCX (rozszerzenie TEX-a): przekodowanie znaków z wejścia na etapie czytania da-
nych (tylko kodowania 8-bitowe). Dyrektywy przekodowania umieszczone w pliku
zródłowym (kompilacja zawsze poleceniem tex dokument):
%&tex --translate-file=il2-pl
%&latex --translate-file=il2-pl
Dyrektywa przekodowania jako opcja wiersza poleceń:
$ tex --translate-file=il2-pl dokument
A
inputenc(pakiet LTEX-a): przekodowanie znaków z wejścia na makra generujące
symbole z fontu (kodowania 8-bitowe i ). Dyrektywa w pliku zródłowym:
\usepackage[latin2]{inputenc}
\usepackage[utf8]{inputenc}
Rzut oka na system składu TEX 28
A
L TEX: wysokopoziomowe zarządzanie składem
Standaryzacja: dostarcza ogólnych narzędzi dopasowanych do danego typu zadań.
Rozszerzalność: daje nieograniczone możliwości tworzenia nowych narzędzi.
Definicje klas dokumentów
*.cls; \documentclass[opcje]{klasa}
precyzują ogólne przeznaczenie dokumentu i wynikający z niego schemat struktury:
artykuł, raport, książka, list, słownik, przekaz pocztowy,
praca magisterska, wizytówka, prezentacja konferencyjna, fomularz, . . .
Pakiety makropoleceń strukturalnych
*.sty; \usepackage[opcje]{pakiet}
definiują szczegółowe struktury przydatne do najróżniejszych celów:
tabele, paginacja, diagramy, schematy blokowe, odsyłacze hipertekstowe,
obsługa formatów graficznych, style cytowania prac, . . .
Pakiety zarządzania fontami
określają globalne (w skali dokumentu) lub lokalne (w skali grupy) domyślne pre-
ferencje co do fontów.
A
Zarządzanie fontami w LTEX-u: PostScript New Font Selection Scheme (PSNFSS).
Rzut oka na system składu TEX 29
A
Przykład typowego dokumentu L TEX-a
Prolog %&latex --translate-file=il2-pl
\nofiles
Preambuła
\documentclass[a4paper,12pt]{article}
deklaracja klasy,
\usepackage{antyktor}
\usepackage{eulervm}
deklaracje pakietów,
\usepackage[LQX]{fontenc}
deklaracje o zasięgu
\usepackage{polski}
globalnym,
\title{Statystyka i~prawda}
prywatne makropolecenia
\author{C.\,Radhakrishna Rao}
\date{}
\def\zmiana#1{\textrm{#1}}
Ciało \begin{document}
\maketitle
zawartość dokumentu,
\begin{abstract}
tekst zasadniczy,
Wariacje na~temat składu akapitów.
elementy uzupełniające,
\end{abstract}
deklaracje lokalne
\section{O~fałszowaniu danych}
\input rao
\input raosignature
\end{document}
Rzut oka na system składu TEX 30
A
L TEX: wysokopoziomowe zarządzanie składem c.d.
Aparat referencyjny
Liczniki: zmienne przechowujące wartości całkowite.
\stepcounter{licznik}, \thelicznik, \value{licznik}
Punkt docelowy: miejsce, w którym zadeklarowano unikalną etykietę
\label{etykieta}
przypisuje jej wartość bieżącą ostatnio użytego mechanizmu numeracji.
Odsyłacze: powołują się na istniejącą etykietę i generują wartość
\ref{etykieta} wynik = wartość związana z etykietą
\pageref{etykieta} wynik = wartość \thepage
pobraną z miejsca wstawienia etykiety.
Odsyłacze interaktywne: tworzone dla formatów i pakiet hyperref
Przypisy: \footnote{Tekst przypisu...}
Mechanizm synchronizowania referencji: kompilacja generuje plik pomocniczy
(aux). Jego zawartość pomaga uporządkować odwołania. Potrzeba dwukrotnej kom-
pilacji!
Rzut oka na system składu TEX 31
A
L TEX: wysokopoziomowe zarządzanie składem c.d.
Aparat matematyczny
Styl wierszowy
$(x-x_1)^2+y^2 = R^2$ - (x - x1)2 + y2 = R2.
Styl eksponowany
$$ (x-x_1)^2+y^2 = R^2 $$ (TEX),
A
\[ (x-x_1)^2+y^2 = R^2 \] (LTEX)
(x - x1)2 + y2 = R2
Numeracja obiektów eksponowanych
\begin{equation} (x-x_1)^2+y^2 = R^2 \end{equation}
(x - x1)2 + y2 = R2 (1)
Zespoły formuł powiązanych przestrzennie
\begin{eqnarray} (x-x_1)^2+y^2 &=& R^2 \\
(x-x_2)^2+y^2 &=& (R + \delta r)^2 \end{eqnarray}
(x - x1)2 + y2 = R2 (2)
(x - x2)2 + y2 = (R + r)2 (3)
Rzut oka na system składu TEX 32
Środowiska użytkowe
Otoczka Dystrybucje Wspomaganie
A
Web2C teTEX (UNIX) vim (+ LTEX-Suite)
fpTEX (W32) GNU emacs (+ AucTEX)
eTEX MikTEX (W32) Midnight Commander
XeTEX O TEX (Mac) SciTE
METAFONT gwTEX (MacOS X)
METAPOST LyX
B TEX TEXLive Kile
makeindex
sterowniki Komercja TEXnic Center
(np. dvips) TEXMaker
Bakoma
TEX WinEdt
TEXtures
WinShell
Scientific Workplace
BM2Font LEd (polski!)
GhostScript
Adobe InDesign. . . hm. . .
PPower4
texinfo
pakiety makropoleceń
Rzut oka na system składu TEX 33
Implementacja teTEX instalacja
TEX Directory Structure
Rzut oka na system składu TEX 34
Implementacja teTEX zarządzanie
Program texconfig
Rzut oka na system składu TEX 35
Środowiska użytkowe wsparcie (1)
Wsparcie ze strony edytorów konsolowych ogólnego przeznaczenia
vim mcedit
Rzut oka na system składu TEX 36
Środowiska użytkowe wsparcie (2)
Wsparcie ze strony edytorów ogólnego przeznaczenia w środowiskach graficznych
SciTE gedit
Rzut oka na system składu TEX 37
Środowiska użytkowe wsparcie (3)
Dedykowane narzędzia w środowiskach edycyjnych ogólnego przeznaczenia
A
GNU Emacs + AucTEX gVim + LTEX-Suite
Rzut oka na system składu TEX 38
Środowiska użytkowe wsparcie (4)
Edytory dedykowane i zintegrowane środowiska pracy
Kile LyX
Rzut oka na system składu TEX 39
Środowiska użytkowe wsparcie (5)
Edytory dedykowane i zintegrowane środowiska pracy w systemach nieUNIX-owych
TEXnicCenter (W32) TEXMaker (Linux, Mac, W32)
Rzut oka na system składu TEX 40
Środowiska użytkowe wsparcie (6)
Przykład eksportu dokumentu ze środowiska WYSIWYG
OpenOffice Writer
Rzut oka na system składu TEX 41
Środowiska użytkowe wsparcie (7)
Przykłady eksportu danych ze środowisk użytkowych
Arkusze kalkulacyjne (gnumeric) Środowiska obliczeniowe (MuPad)
$ gnuplot
> set terminal latex
> set output "wykres.tex"
Środowiska graficzne (gnuplot)
> plot [x=0:2*pi] sin(x)
> quit
$
Rzut oka na system składu TEX 42
Czy warto?
Środowiska WYSIWYG sprzyjają pracy nad projektem wizualnym, choć dziś umoż-
liwiają już także pracę nad projektem strukturalnym (czy nie za przyczyną DEK?).
TEX przeciwnie: sprzyja pracy nad projektem strukturalnym, choć umożliwia także
pracę nad projektem wizualnym.
Wykonanie doraznego składu ulotnego dokumentu za pomocą procesora WYSI-
WYG jest łatwiejsze, niż porządnego składu przy użyciu TEX-a.
Takie porównanie nie bierze pod uwagę jakości, więc nie ma sensu.
Doświadczony użytkownik zrobi dobry skład każdym narzędziem, ale TEX oszczę-
dzi mu ręcznej roboty.
Ludzie uczą się języków, także języków opisu dokumentów.
A
Opanowanie podstaw LTEX-a nie jest trudniejsze od opanowania podstaw XHTML.
A
Przy tworzeniu dokumentów LTEX-a można posługiwać się programami wspoma-
gającymi (choć nie ma i nie może być środowiska ściśle WYSIWYG).
Rzut oka na system składu TEX 43
Literatura
Wydawnictwa w języku angielskim
[en1] D. E. K : The TEXbook. Wokingham 1986.
[en2] D. E. K : TEX: the Program. Wokingham 1986.
[en3] M. S : The Joy of TEX: a Gourment Guide to Typesetting with the AMS-TEX Macro Package.
Providence (Rhode Island) 1986.
A
[en4] F. M , M. G , A. S : The LTEX Companion. Wokingham 1994.
A
[en5] M. G , S. R , F. M : The LTEX Graphics Companion. Wokingham 1997.
A
[en6] H. K , P. W. D : A Guide to LTEX 2: Document Preparation for Beginners and Advanced Users.
Harlow 1995.
Rzut oka na system składu TEX 44
Wydawnictwa w języku polskim
A
[pl1] L. L : LTEX: System przygotowywania dokumentów. Przewodnik użytkownika i podręcznik.
Kraków 1992.
A
[pl2] W. M : LTEX. Warszawa 1992.
A
[pl3] J. K : Wprowadzenie do systemu komputerowego składu tekstów drukarskich LTEX.
Wrocław 1994.
A
[pl4] W. M , E. R : LTEX zaawansowane narzędzia. Warszawa 1996.
A
[pl5] A. D : LTEX wiersz po wierszu. Gliwice 2001.
A
[pl6] L. L : LTEX. System opracowywania dokumentów. Podręcznik i przewodnik użytkownika.
Warszawa 2004.
[pl7] D. E. K : TEX. Przewodnik użytkownika. Warszawa 2005.
Rzut oka na system składu TEX 45
Materiały elektroniczne w języku polskim
[@1] M. D : Aagodne wprowadzenie do systemu TEX.
A
[@2] T. O : Nie za krótkie wprowadzenie do systemu LTEX 2.
[@3] W. M : Wirtualna Akademia. Katedra TEX-ologii stosowanej.
[@4] Biuletyny GUST.
A
[@5] W. M : Włączanie grafik do tekstów w LTEX 2.
A
[@6] G. S : Tworzenie dokumentów PDF przy pomocy LTEX-a.
Wsparcie użytkowników
CTAN TUG GUST
Comprehensive TEX the TEX Users Group Grupa Użytkowników Systemu TEX
Archives Network (od 1980) (od 1992)
http://www.ctan.org http://www.tug.org http://www.gust.org.pl
Rzut oka na system składu TEX 46
Życie i wszystko inne
Nowicjusz myśli, że nauczenie się TEX-a zajmie dużo czasu.
Użytkownik zdaje sobie sprawę, że nie było w końcu tak zle.
Programista usiłuje siebie przekonać, że już następne makro z pewnością oszczędzi
mu czasu w przyszłości.
Czarodziej daremnie rozmyśla o tym, co mógł był w życiu zrobić gdyby nigdy nie
usłyszał o TEX-u.
Guru pojmuje, że życie bez TEX-a jest nic nie warte.
D A , R C , V E Uciecha z TEX-a
za: Biuletyn GUST nr 4, 1994
Rzut oka na system składu TEX 46
Życie i wszystko inne
Nowicjusz myśli, że nauczenie się TEX-a zajmie dużo czasu.
Użytkownik zdaje sobie sprawę, że nie było w końcu tak zle.
Programista usiłuje siebie przekonać, że już następne makro z pewnością oszczędzi
mu czasu w przyszłości.
Czarodziej daremnie rozmyśla o tym, co mógł był w życiu zrobić gdyby nigdy nie
usłyszał o TEX-u.
Guru pojmuje, że życie bez TEX-a jest nic nie warte.
D A , R C , V E Uciecha z TEX-a
za: Biuletyn GUST nr 4, 1994
Rzut oka na system składu TEX 46
Życie i wszystko inne
Nowicjusz myśli, że nauczenie się TEX-a zajmie dużo czasu.
Użytkownik zdaje sobie sprawę, że nie było w końcu tak zle.
Programista usiłuje siebie przekonać, że już następne makro z pewnością oszczędzi
mu czasu w przyszłości.
Czarodziej daremnie rozmyśla o tym, co mógł był w życiu zrobić gdyby nigdy nie
usłyszał o TEX-u.
Guru pojmuje, że życie bez TEX-a jest nic nie warte.
D A , R C , V E Uciecha z TEX-a
za: Biuletyn GUST nr 4, 1994
Dziękuję!
Wyszukiwarka
Podobne podstrony:
TBP01x 3 3 slides
Munsell Slides
slideshow
TeX
E1 Lab 5 4 a jj 1
slideshow 004
TBP01x 3 5 slides
Vzduchovka Tex mod
image slideshow
lecture slides Powerpoint Slides Week1 1 0 Course Introduction revised
credit slides 1
TBP01x 3 2 slides
glusterfs volumes types slideshow
praca tex
Symbols tex
więcej podobnych podstron