1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
|
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" content="text/html; charset=iso-8859-2">
<TITLE>TeXové drobnosti</TITLE>
<STYLE TYPE="text/css">
<!--
ol.section li { font-size:large;font-weight:bold;margin-top:1em; }
ul.question li { font-size:medium;font-weight:normal;margin-top:.2em; }
-->
</STYLE>
</HEAD>
<BODY BACKGROUND="images/back_narrow.gif"
BGCOLOR="#ffffff"
TEXT="#000000"
LINK="#900000"
ALINK="#C14242"
VLINK="#D30000">
<TABLE BORDER=0>
<TR><TD width=30> </TD>
<TD><TABLE width="100%" BORDER=0>
<TR><TD valign="middle" align="center"><FONT SIZE="+2"><B>TeXové drobnosti</FONT></TD><TD align="right">
<a href="http://www.cstug.cz/"><IMG BORDER=0 SRC="images/logo.gif" ALT="CSTUG" HEIGHT=51 WIDTH=165 ALIGN="right"></a><BR>
</TD></TR></TABLE></TD></TR>
<TR><TD></TD><TD></TD></TR>
<TR><TD></TD><TD><HR></TD></TR>
<TR><TD></TD><TD>
<P>
<P>
DVI súbor (teda súbor, ktorý má príponu <CODE>.dvi</CODE>) je hlavný
výstupný
súbor TeXu (pou¾ijúc TeX v ¹ir¹om zmysle, zahàòajúc v tom aj
LaTeX a ïal¹ie verzie a varianty TeXu). DVI znamená device
independent, èo je nezávislý od zariadenia, a znamená to, ¾e tento súbor
by mal by» vytlaèený rovnako, bez ohµadu na typ zariadenia, na ktorom
bol vyhotovený. DVI súbor je èítaný ovládaèom zariadenia
(pozri Otázku <A HREF="sectD.html#Q-drivers">Èo je to ovládaè</A>), ako je tlaèiareò
(napr. LaserJet), alebo je vstupom pre
prehliadaè na obrazovke monitora. V DVI súbore je pou¾ité
TeXovské
vnútorné kódovanie. Z TeXovského vstupného súboru by sme mali urobi»
v¾dy ten istý DVI súbor bez ohµadu na implementáciu TeXu, ktorú
pou¾ijeme.
<P>
DVI súbor obsahuje v¹etky informácie, ktoré sú potrebné pre tlaè alebo
prezeranie, ale nie konkrétne bitové mapy alebo iné popisy písma. Snáï
e¹te materiál, ktorý je uvedený v príkaze <CODE>\special</CODE>
(pozri Otázku <A HREF="sectD.html#Q-specials">Pøíkazy typu <CODE>\special</CODE></A>).
<P>
Základný odkaz na ¹truktúru DVI súboru je zdrojový text
<EM>dvitype</EM>, ktorý mô¾ete nájs» na CTANe (<A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/">CTAN</A>: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/systems/knuth/texware/dvitype.web">dvitype</A>).
<P>
<P>
<P><A NAME="Q-drivers"><HR><H3>Èo je to ovládaè</H3></A>
<P>
Ovládaè (driver) je program, ktorý má za vstup DVI súbor
(pozri Otázku <A HREF="sectD.html#Q-dvifile">Èo je to DVI súbor</A>)
a (obvykle) produkuje súbor, ktorý mô¾e by» poslaný do
typografického výstupného zariadenia, napríklad tlaèiarne.
<P>
Ovládaè je obvykle ¹pecifický pre danú tlaèiareò alebo triedu
tlaèiarní, aj keï ka¾dá PostScriptová tlaèiareò by mala
vytlaèi» výstup PostScriptového ovládaèa.
<P>
Ovládaè potrebuje DVI súbor, ako aj informáciu o písme. Písma
mô¾u by»
zadávané vo forme bitových máp alebo odkazom na písmo, ktoré je priamo
obsiahnuté v tlaèiarni. Ka¾dý ovládaè oèakáva informáciu o písme
v ¹pecifickej podobe. Viac informácií o formách písem mô¾ete nájs»
v Otázkach <A HREF="sectD.html#Q-pkfiles">Èo sú to PK súbory</A>, <A HREF="sectD.html#Q-tfmfiles">Èo sú to TFM súbory</A>,
<A HREF="sectD.html#Q-ECfonts">Èo sú EC fonty?</A>, <A HREF="sectD.html#Q-whatenc">Èo sú to kódovania?</A> a
<A HREF="sectL.html#Q-usepsfont">Pou¾ití PostScriptových fontù v TeXu</A>.
<P>
<P>
<P><A NAME="Q-pkfiles"><HR><H3>Èo sú to PK súbory</H3></A>
<P>
PK súbory (od slov packed raster) obsahujú bitmapy písiem. Výstup
z METAFONTu
(pozri Otázku <A HREF="sectK.html#Q-getfromMF">Jak dostat z METAFONTu to, co chcete</A>)
obsahuje GF súbor (generic font).
Tento konvertuje program <EM>gftopk</EM> do PK súboru.
Existuje mnoho PK súborov, preto¾e pre ka¾dé písmo potrebujeme
jeden. Dokonca pre ka¾dú bodovú veµkos» aj zväè¹enie (magnification),
ka¾dý typ ka¾dej rodiny písem. Navy¹e, PK súbor pre jednu
tlaèiareò nemusí nevyhnutne by» dobrý pre druhú tlaèiareò. V takom
prípade je treba ma» celú mno¾inu PK súborov aj pre túto ïal¹iu
tlaèiareò. Výsledkom sú èasto komplikované adresárové ¹truktúry alebo
FLI (font library file) súbory pre väè¹iu usporiadanos» prístupu.
<P>
<P>
<P><A NAME="Q-tfmfiles"><HR><H3>Èo sú to TFM súbory</H3></A>
<P>
TFM je skratka pre TeX font metric, èi¾e TFM súbor
obsahuje informácie o rozmeroch charakterov (písmeniek), o ligatúrach
(typografické spojenie dvoch alebo viacerých znakov) a o medziznakových
medzerách v danom písme. Pre ka¾dé písmo je potrebný jeden TFM
súbor, dokonca pre ka¾dú bodovú veµkos». Ale jeden TFM súbor je pre
v¹etky zväè¹enia (magnifications), preto je vo v¹eobecnosti TFM
súborov menej ako PK súborov. Dôle¾ité je, ¾e TFM súbory
pou¾ívajú programy TeX, LaTeX, ale nie sú vo v¹eobecnosti
potrebné napríklad pre ovládaèe tlaèiarní.
<P>
<P>
<P><A NAME="Q-virtualfonts"><HR><H3>Virtuální fonty</H3></A>
<P>
Virtuální fonty pro TeX jako první implementoval David Fuchs u¾ na
zaèátku jeho historie, ale pro vìt¹inu lidí zaèaly existovat, a¾ kdy¾ Knuth
v roce 1989 zmìnil formát a napsal nìkolik podpùrných programù (toho èasu napsal
relevatní èlánek do CTANu - <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/">CTAN</A>: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/info/virtual-fonts.knuth">vf-knuth</A>). Pou¾ití
virtuálních fontù je zpùsob, jak øíci TeXu o nìèem slo¾itìj¹ím, ne¾
je vzájemnì
jednoznaèné mapování znakù. Entity, které se definují ve virtuálním fontu,
vypadají jako TeXovské znaky (objevují se s popisem jejich velikosti a
souborem metriky fontu), ale <CODE>dvi</CODE> procesor je mù¾e expandovat do nìèeho
zcela odli¹ného. Tato schopnost se dá vyu¾ít pro pøeskládání znakù, pro
vytvoøení fontu poskládaného z glyfù pocházejících z rùzných zdrojových
souborù, nebo obecnì k vytváøení rùznì slo¾itých efektù — virtuální font
mù¾e obsahovat cokoliv, co je pøípustné v <CODE>dvi</CODE> souboru.
Ve vìt¹inì praktických pøípadù se virtuální fonty pou¾ívají k pøeskládání
postscriptových fontù (viz <A HREF="sectL.html#Q-metrics">Soubory metrik TeXovských fontù pro PostScriptové fonty</A>) nebo
k vytváøení „nepravých“ matematických fontù.
<P>
Je dùle¾ité si uvìdomit, ¾e samotný TeX virtuální fonty <EM>nevidí</EM>.
Pro ka¾dý virtuální font, který ète <CODE>dvi</CODE> ovladaè, existuje odpovídající
<CODE>tfm</CODE> soubor, který ète TeX. Virtuální fonty jsou normálnì vytvoøeny
v jednom ASCII souboru (<CODE>vpl</CODE>, Virtual Property List), který obsahuje oba
druhy informace. Program <EM>vptovf</EM> pak vytvoøí binární <CODE>tfm</CODE> a <CODE>vf</CODE>
soubory. Nejbì¾nìj¹ím zpùsobem (v dne¹ní dobì) jak vygenerovat <CODE>vpl</CODE> soubor,
je pou¾ít programový balík <EM>fontinst</EM>, který je detailnì popsán
spoleènì s diskusí
o viz <A HREF="sectL.html#Q-metrics">Soubory metrik TeXovských fontù pro PostScriptové fonty</A>.
Dal¹ím prostøedkem pro ad-hoc vytváøení virtuálních fontù je
<A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/">CTAN</A>: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/fonts/utilities/qdtexvpl">qdtexvpl</A> od Eberharda Mattese.
<P>
<P><A NAME="Q-specials"><HR><H3>Pøíkazy typu <CODE>\special</CODE></H3></A>
<P>
TeX poskytuje prostøedy k vyjádøení vìcí, které mohou dìlat ovladaèe
zaøízení, ale o kterých TeX sám neví nic. Napøíklad TeX neví nic
o tom, jak zaøadit postscriptový obrázek do dokumentu, nebo jak nastavit
barvu tisknutého textu. Ale nìkteré ovladaèe zaøízení to umìjí.
<P>
Takové vìci jsou umo¾nìny prostøednictvím pøíkazù <CODE>\special</CODE>. Jediná
vìc, kterou s takovým pøíkazem TeX udìlá, je, ¾e expanduje jeho
argumenty a pak pøíkaz pøepí¹e do <CODE>dvi</CODE> souboru. Ve vìt¹inì pøípadù jsou
k dispozici balíky (èasto i s ovladaèem), které poskytují srozumitelné
rozhraní k pøíkazùm <CODE>\special</CODE>. Napøíklad pøi vkládání obrázku do textu
je nutno vynechat patøiènou mezeru. Anebo zmìna barvy mù¾e být
nároènìj¹í operace vy¾adující znalost trikù. LaTeX 2e má standardní balíky
pro grafiku a barvu, s jejich¾ pomocí jsou vkládání souborù, rotace,
zmìny mìøítka a barvy prostøednictvím pøíkazù <CODE>\special</CODE> jednoduché.
<P>
Argumenty povolené pro pøíkaz <CODE>\special</CODE> jsou závislé na ovladaèi zaøízení.
Kromì pøedchozích pøíkladù existují pøíkazy <CODE>\special</CODE> pro ovladaèe
z emTeXu (napø. <EM>dvihplj</EM>, <EM>dviscr</EM>, <EM>atd.</EM>,
které kreslí pøímky s libovolným sklonem, a pøíkazy pro ovladaè
<EM>dvitoln03</EM>, které umo¾òují, aby stránka byla vysázena
nale¾ato).
<P>
<P><A NAME="Q-dtx"><HR><H3>Dokumentované LaTeXovské zdroje (<CODE>.dtx</CODE> soubory)</H3></A>
<P>
LaTeX 2e a spousta podpùrných balíkù maker jsou nyní psány
metodou viz <A HREF="sectI.html#Q-lit">Co je dokumentované programování</A>,
se zdrojovým kódem i dokumentací ve stejném souboru. Autorem tohoto formátu,
který je znám jako „doc“, je Frank Mittelbach. Dokumentované zdroje mají
podle konvence koncovku <CODE>.dtx</CODE> a dokumentace by z nich mìla být pøed
pou¾íváním odstranìna. Pøípadnì lze soubor <CODE>.dtx</CODE> zpracovat
LaTeXem, èím¾ vznikne pìknì zformátovaná verze dokumentovaného kódu.
Vìt¹inou je k dispozici instalaèní dávka (s pøíponou <CODE>.ins</CODE>), která
potøebuje standardní balík LaTeX 2e <EM>docstrip</EM>. Ten
odstraòuje v¹echny poznámky, jejich¾ obsahem je právì ta dokumentace.
V prùbìhu instalace se (kromì jiných vìcí) odstraòuje ze souborù jejich
dokumantace, aby se zvý¹ila rychlost ètení tìchto souborù bì¾ícím
LaTeXem. Do jednoho <CODE>.dtx</CODE> souboru mù¾e být zahrnuto více balíkù,
s podmínìnými sekcemi a prostøedky pro indexy maker atd. Soubory <CODE>.dtx</CODE>
mù¾e psát ka¾dý.
Jejich formát je popsán v <EM>The LaTeX Companion</EM>
(viz <A HREF="sectC.html#Q-books">Knihy o TeXu a pøíbuzná literatura</A>). Zatím neexistují programy
podporující psaní <CODE>.dtx</CODE> souborù.
<P>
Poté, co byly z <CODE>.dtx</CODE> souborù vytvoøeny <CODE>.sty</CODE> nebo <CODE>.cls</CODE> (a dal¹í)
soubory, nejsou u¾ soubory <CODE>.dtx</CODE> LaTeXem pou¾ívány.
Nemusí být uchovávány s fungujícím
systémem. Nicménì pro mnoho balíkù jsou primárním zdrojem dokumentace, tak¾e
je nìkdy dobré si je ponechat.
<P>
Zajímavým je také balík <EM>docmfp</EM>, který roz¹iruje model balíku <EM>doc</EM>
do METAFONTu a METAPOSTu (viz Otázku <A HREF="sectB.html#Q-MF">Co to je METAFONT</A> a viz <A HREF="sectB.html#Q-MP">Èo je to METAPOST</A>), èím¾ umo¾nil
distribuci dokumentovaných balíkù obsahujících kód pro METAFONT a METAPOST spoleènì
s LaTeXovským kódem.
<P>
<P><A NAME="Q-whatenc"><HR><H3>Èo sú to kódovania?</H3></A>
<P>
Zaèneme definíciou dvoch pojmov: <EM>znak</EM> (<EM>character</EM>)
a <EM>glyf</EM> (<EM>glyph</EM>).
Znak je abstraktný pojem pre „atóm“ nejakého jazyka alebo iného dialógu
(mô¾e to teda by» písmeno abecedy pre jazyk zalo¾ený na abecede, slabika
pre jazyk zalo¾ený na slabikách alebo ideogram pre jazyk ideogramov).
Glyf je znaèka na obrazovke alebo papieri reprezentujúca znak.
Aby bolo mo¾né èítanie daného jazyka, musí by» dohodnutý vz»ah medzi glyfom
a znakom, tak¾e kým presný tvar glyfu mô¾e by» ovplyvnený mnohými faktormi
(mo¾nosti média, ¹týl, ...), podstata konkrétneho znaku musí by» zachovaná.
<P>
V¾dy, keï má poèítaè zobrazova» nejaké znaky, niekto musí zavies» vz»ah medzi
mno¾inou èísel a znakmi, ktoré reprezentujú. Toto je podstata kódovania
(mapovanie mno¾iny èísel na to, èo majú reprezentova», a opaène).
<P>
TeX pracuje s kódovanými znakmi stále. Znaky na vstupe sú v nejakom kódovaní
a TeX sám produkuje kódované znaky vo svojom DVI alebo PDF
výstupe. Tieto kódovania mô¾u ma» rôzne vlastnosti.
<P>
V èase, keï Knuth prvýkrát implementoval TeX, bol jeho vstupný prúd dos»
spurný. Knuth pripravoval dokumenty na termináloch, ktoré produkovali divné
znaky, èo malo za následok, ¾e TeX obsahoval opatrenia na preklad vstupného
kódovania do nieèoho poriadneho. Dnes sa o preklad stlaèenia klávesu do kódovania
zodpovedajúceho pou¾ívateµovmu jazyku stará operaèný systém. Pou¾ité kódovanie
je èasto národný alebo medzinárodný ¹tandard (aj keï mnoho operaèných systémov
pou¾íva „kódové stránky“ definované MicroSoftom). Tieto ¹tandardy a kódové
stránky obsahujú znaky, ktoré nie sú vo vstupnom prúde TeXu povolené.
S týmito znakmi sa treba nejako vysporiada». Znak ako „'e“ musí by» TeXom
interpretovaný tak, aby aspoò pripomínal spôsob, ako je interpretované „<CODE>\'</CODE><CODE>e</CODE>“.
<P>
Výstupný prúd TeXu je v inej situácii. Znaky v òom budú pou¾ité na výber
glyfov z pou¾itých fontov. Tak¾e kódovanie výstupného prúdu predstavuje
kódovanie fontu (aj keï pou¾itý font mô¾e by» virtuálny –
viï Otázku <A HREF="sectD.html#Q-virtualfonts">Virtuální fonty</A>). Èas» výstupného prúdu mô¾e
by» priamym prepisom vstupu, ale mô¾e obsahova» aj výsledok pou¾itia príkazov
alebo preklad vstupov ako napríklad ligatúry (<CODE>fi</CODE>
).
<P>
Kódovania fontov sa stali horúcou témou, keï sa objavilo corkovské kódovanie
(viï <A HREF="sectD.html#Q-ECfonts">Èo sú EC fonty?</A>), pre mo¾nos» potlaèenia príkazov
<CODE>\accent</CODE> vo výstupnom prúde (a tým zvý¹enie kvality rozdeµovania slov, ktoré
je preru¹ené príkazmi <CODE>\accent</CODE> — viï
Otázku <A HREF="sectD.html#Q-hyphen">Ako funguje v TeXu rozdeµovanie slov?</A>). Na vyu¾itie znakov s diakritikou vo fontoch je
potrebné zaisti», ¾e pri ka¾dom vlo¾ení sekvencie príkazov „<CODE>\'</CODE><CODE>e</CODE>“
(explicitne alebo implicitne prostredníctvom spomenutého mapovania vstupu)
bude pou¾itý znak kódujúci pozíciu glyfu „'e“.
<P>
Tak¾e znak s diakritikou vo vstupnom prúde TeXu je prelo¾ený do TeXovských
príkazov generujúcich nieèo vyzerajúce ako vstupný znak. Táto sekvencia
TeXovských príkazov je pri vytváraní výstupu následne prelo¾ená spä»
do jediného glyfu s diakritikou. Práve o tieto veci sa starajú
LaTeXovské balíky <EM>inputenc</EM> a <EM>fontenc</EM> (ak pracujú
v tandeme na (väè¹ine) znakov vo vstupnom kódovaní ISO Latin-1 alebo
ISO Latin-2 a T1 kódovania fontu). Na prvý pohµad vyzerá zvlá¹tne
necha» prvý balík nieèo spravi» a druhý necha» zmeny vráti» spä». Nie v¾dy sa to
v¹ak deje takto. Väè¹ina kódovaní fontov nesedí so zodpovedajúcim vstupným
kódovaním úplne presne a práve tieto dva balíky poskytujú potrebnú mieru
symetrie pre LaTeX.
<P>
<P><A NAME="Q-hyphen"><HR><H3>Ako funguje v TeXu rozdeµovanie slov?</H3></A>
<P>
Ka¾dý vie, èo je rozdeµovanie slov. Vidíme to vo väè¹ine kníh, ktoré èítame,
a (ak sme pozorní) èasto mô¾eme zbada» smie¹ne, nesprávne rozdelenia
(istý èas boli britské noviny celkom plodným zdrojom).
<P>
©týly rozdeµovania slov sú regionálne závislé (jeden jazyk mô¾e by» rozdielne
rozdeµovaný v rôznych krajinách — napríklad britská a americká angliètina).
Dôsledkom toho musí sádzací systém, ktorý nie je pri pou¾ití jedného regionálneho
nastavenia obmedzený na jeden jazyk, by» schopný z èasu na èas zmeni» parvidlá
pre delenie slov.
<P>
TeX má celkom dobrý systém delenia slov (pôvodne vytvorený Frankom Liangom).
Aj keï sa mu obèas podarí minú» zjavné miesta rozdelenia, málokedy vyberie úplne
zlé. Algoritmus kontroluje kandidátov na rozdelenie voèi mno¾ine rozdeµovacích
vzorov. Kandidátmi na rozdelenie musia by» postupnosti písmen (alebo iné
jednotlivé znaky, ktoré bude TeX pova¾ova» za písmená) — veci ako
TeXovské primitivum <CODE>\accent</CODE> zabraòujú rozdelovaniu.
<P>
Mno¾iny rozdeµovacích vzorov sú zvyèajne odvodené z analýzy zoznamu správnych
rozdelení (odvodzovanie, vykonávané pomocou balíku <EM>patgen</EM>, nie je
obvykle participaèný ¹port).
<P>
Vzory pre jazyky, s ktorými sa TeXovský systém stretne, mô¾u by» nahraté
pri jeho in¹talácii. Pre zmenu mno¾iny jazykov je nutná èiastoèná rein¹talácia
(viï <A HREF="sectO.html#Q-babeljaz">Pou¾ívání nových jazykù v babelu</A>).
<P>
TeX poskytuje dva príkazy na „pou¾ívateµskej úrovni“ pre kontrolu
rozdeµovania slov: <CODE>\language</CODE> (vyberá ¹týl rozdeµovania)
a <CODE>\hyphenation</CODE> (dáva rozdeµovaciemu stroju explicitné in¹trukcie, ktoré majú
vy¹¹iu prioritu ako vzory).
<P>
Be¾ný pou¾ívateµ LaTeXu si nemusí láma» hlavu s <CODE>\language</CODE>, ked¾e je veµmi
dobre spravovaný balíkom <EM>babel</EM>. Pou¾itie <CODE>\hyphenation</CODE> je preberané
v Otázke <A HREF="sectO.html#Q-nohyph">Moje slová sa nerozdeµujú</A>.
<P>
<P><A NAME="Q-ECfonts"><HR><H3>Èo sú EC fonty?</H3></A>
<P>
Font pozostáva z mno¾stva <EM>glyfov</EM>. Aby sme ich mohli tlaèi»,
musia by» kódované (viï Otázku <A HREF="sectD.html#Q-whatenc">Èo sú to kódovania?</A>). Kódovanie sa pou¾íva ako
index do tabuliek vo fonte. Knuth si z rôznych príèin pre rodinu svojich fontov
Computer Modern vybral veµmi zvlá¹tne kódovanie (vybral si rôzne kódovania
pre rôzne fonty, tak¾e aplikácia, ktorá ich pou¾íva, musí pred výberom
konkrétneho glyfu vedie», ktorý font pou¾íva).
<P>
S príchodom TeXu verzie 3 sa vytratila väè¹ina dôvodov ospravedlòujúcich
Knuthove kódovanie a na corkovskom stretnutí TUGu bolo definované
kódovanie mno¾iny 256 glyfov pre TeXovské texty. Zámer bol, aby
kódovanie pokrylo „väè¹inu“ európskych jazykov pou¾ívajúcich latinku
(v zmysle zahrnutia v¹etkých potrebných znakov s diakritikou).
Knuthove CMR fonty neobsahovali napríklad veci potrebné pre pol¹tinu
(medzi ne¹»astlivcov patrili ale aj obyvatelia Islandu), corkovské kódovanie ich
u¾ obsahovalo. Ani corkovské kódovanie v¹ak nepokrývalo v¹etko (smolu mali
minimálne Rumuni, Wel¹ania a Laponci; corkovské kódovanie situáciu severných
Laponcov zlep¹uje). LaTeX sa na corkovské kódovanie odkazuje ako
na T1 kódovanie a poskytuje prostriedky na pou¾itie takto kódovaných
fontov (èím sa vyhýba problémom s diakritikou a rozdeµovaním slov —
viï Otázku <A HREF="sectQ.html#Q-accenthyphen">Akcentovaná slova se nedìlí</A>).
<P>
Jediné METAFONTovské fonty vyhovujúce corkovskému kódovaniu sú EC fonty.
Vyzerajú ako CM, aj keï ich metriky sa od metrík CM fontov lí¹ia.
Fonty sú pova¾ované za „stabilné“ (v rovnakom zmysle ako CM fonty:
ich metriky sa zrejme u¾ meni» nebudú). Vá¾nymi problémami pre be¾ného
pou¾ívateµa sú ich veµkosti (ka¾dý EC font je pribli¾ne dvojnásobný oproti
zodpovedajúcemu CM fontu) a ich poèet (je ich oveµa viac ne¾ CM
fontov). Poèet fontov býval demotiváciou pre tvorbu Adobe Type 1 verzií fontov,
no mnoho komerèných dodávateµov poskytuje EC alebo EC-ekvivalentné
fonty v type 1 alebo TrueType formáte — viï
Otázku <A HREF="sectF.html#Q-commercial">Komerèní implementace TeXu</A> (voµne dostupné verzie sa tie¾
dajú získa» — viï <A HREF="sectT.html#Q-textrace">Projekt TeXtrace</A>).
Kým sa nevyrobia zodpovedajúce fonty pre matematiku, CM fonty musia
zosta» zachované, preto¾e niektoré matematické symboly sú vykresµované z fontov
v CM kódovaniach.
<P>
EC fonty sú distribuované so sadou „Text Companion“ (TC) fontov
poskytujúcich glyfy be¾ne pou¾ívané v texte. TC fonty sú kódované
podµa LaTeX TS1 kódovania a nie sú pova¾ované za stabilné.
<P>
Corkovské kódovanie je implementované virtuálnymi fontami
viz <A HREF="sectL.html#Q-usepsfont">Pou¾ití PostScriptových fontù v TeXu</A>,
pre PostScriptové fonty a tie¾ balíkmi fontov <EM>txfonts</EM> a
<EM>pxfonts</EM>
(viï Otázku <A HREF="sectL.html#Q-pschoice">Výbìr zvìt¹ovatelných obrysových fontù</A>).
<P>
CTAN: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/">CTAN</A>: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/fonts/ec">ec</A>.
<P>
<P>
<P><A NAME="Q-TDSwhat"><HR><H3>Co je to TDS?</H3></A>
<P>
TDS je zkratka pro TeX Directory Structure, co¾ je standardní zpùsob
organizace TeXových souborù ve va¹em sytému. Specifikace TDS je
k dispozici v archívu CTAN v adresáøi <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/">CTAN</A>: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/tds">tds</A>.
<P>
Moderní distribuce se vìt¹inou pøizpùsobují TDS, které stanuvuje
standardní i lokální hierarchii. TDS si vyhrazuje jméno <CODE>texmf</CODE> pro
koøenový adresáø hierarchie. Soubory nabízené jako souèást hierarchie
jsou uspoøádány do adresáøù podle této standardní hierarchie. Umístìní
koøenového adresáøe je závislé na systému – na UNIXech to v¹ak
standardnì bývá jeden z adresáøù <CODE>/usr/local/texmf</CODE>,
<CODE>/usr/local/share/texmf</CODE> nebo <CODE>/opt/texmf</CODE>
nebo jiná podobná cesta, v ka¾dém pøípadì jsou v¹ak v¹echny soubory
umístìny v podadresáøi <CODE>texmf</CODE>.
Mohou zde v¹ak být mnohonásobné lokální
hierarchie, v nich¾ mohou být ulo¾eny dal¹í soubory. V extrémním
pøípadì mù¾e mít TeXová instalace jednu lokální hierarchii, ale ka¾dý
u¾ivatel mù¾e mít také svoji individuální lokální hierarchii. Jejich
umístìní není pouze závislé na systému, ale na jednotlivých
u¾ivatelích. Av¹ak pøesto platí, ¾e v¹echny soubory jsou umístìny
v lokálním adresáøi <CODE>texmf</CODE>.
<P>
TDS je publikováno jako výstup TUG
Technical Working Group (viz <A HREF="sectB.html#Q-TUGTC">Technické pracovní skupiny TUGu</A>).
Mù¾ete si projít online verzi na <A HREF="http://tug.org/tds/"><CODE>http://tug.org/tds/</CODE></A> standardu
a získat kopie v rùzných formátech (vèetnì zdrojového kódu) na CTANu.
<P>
<P><A NAME="Q-eps"><HR><H3>Èo je to Encapsulated PostScript</H3></A>
<P>
PostScript sa stal ¹tandardným jazykom výkonných tlaèiarní. Ked¾e PostScript je
tie¾ mocným grafickým programovacím jazykom, je èasto pou¾ívaný ako výstup
pre kresliace (a iné) balíky.
<P>
Keï¾e je v¹ak PostScript silným jazykom, musia by» niektoré pravidlá
podvrhnuté, aby mohla by» výstupná kresba vlo¾ená v dokumente ako obrázok bez
„pretekania“ (teda bez znièenia okolitých prvkov dokumentu, prípadne
neschopnosti vykreslenia).
<P>
Príloha H PostScript Language Reference Manual (referenèný manuál
k PostScriptu; druhé a nasledovné vydania) ¹pecifikuje pravidlá pre pou¾itie
PostScriptu pre obrázky týmto spôsobom. Dôle¾ité vlastnosti sú:
<UL>
<LI> sú vy¾adované urèité „¹truktúrované komentáre“; dôle¾ité sú komentáre
identifikujúce typ súboru a informáciu o minimálnom boxe uzatvárajúcom
obrázok (tzv. <EM>bounding box</EM>);
<LI> niektoré príkazy sú zakázané — napríklad príkaz <CODE>showpage</CODE> zapríèiní
zmiznutie obrázku vo väè¹ine prostredí TeXovského výstupu;
<LI> je povolená informácia o náhµade (napríklad pre textové procesory, ktoré
nevedia samy správne vykresli» PostScript) — táto informácia mô¾e by»
v µubovolnom systémovo ¹pecifickom formáte (ka¾dý prehliadací program sa mô¾e
rozhodnú» ignorova» ju).
</UL>
O postscriptovom obrázku splòujúcom tieto pravidlá sa hovorí, ¾e je vo formáte
<EM>Encapsulated PostScript</EM> (zapuzdrený PostScript).
TeXovské/LaTeXovské balíky na vkladanie PostScriptu sú ¹truktúrované
na pou¾itie zapuzdreného PostScriptu, èo samozrejme vedie k humorným situáciam,
pri ktorých nahnevaní pou¾ívatelia TeXu/LaTeXu priam bojujú s výstupom
kresliaceho softvéru, ktorého autori tieto pravidlá nepoznajú.
<P>
<P><A NAME="Q-fontname"><HR><H3>Èo je to schéma názvov „Berry“</H3></A>
<P>
V starých èasoch boli distribúcie TeXu obmedzovaný slabou schopnos»ou
súborových systémov reprezentova» dlhé názvy. (Súborový systém MSDOS bol
pekným stra¹iakom, no na¹»astie v¹etky aktuálne Microsoft systémy dovoµujú
pri ¹pecifikácii názvov súborov väè¹iu slobodu. ©tandard ISO 9660 pre ¹truktúru
CDROMov má bohu¾iaµ podobné nedostatky, ktoré ale takisto boli modifikované
rôznymi roz¹íreniami.)
<P>
Jednou z oblastí, v ktorých toto pôsobilo problémy, boli názvy súborov Type 1
fontov. Tieto fonty sú distribuované ich dodávateµmi s nezmyselnými krátkymi
názvami a existujú prirodzené ambície zmeni» názov na nieèo, èo font
identifikuje presnej¹ie. Bohu¾iaµ, názvy ako „BaskervilleMT“ u¾ sú ïaleko
za schopnos»ami typických slab¹ích súborových systémov, pridajte ¹pecifikáciu
tvaru alebo varainty fontu a »a¾kosti sa zaènú vymyka» kontrole.
<P>
Tak¾e vznikla schéma názvov Berry.
<P>
Základom schémy je kódovanie rozlièných èastí ¹pecifikácie súboru
extrémne struèným spôsobom, aby mohlo by» vyjadrené dostatoèné mno¾stvo názvov
fontov dokonca aj v chudobnej¹om priestore názvov súborov. Kódovanie pou¾íva
jedno písmeno pre „zlieváreò“ (foundry) fontu, dve pre názov
typu písma, jedno pre
duktus atï. Celá schéma je vykreslená v distribúcii balíku
<CODE>fontname</CODE>, ktorá zahàòa rozsiahlu dokumentáciu a sadu tabuliek
fontov, ktorých názvy boli upravené.<BR>
<CODE>fontname</CODE>: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/">CTAN</A>: <A HREF="ftp://ftp.cstug.cz/pub/tex/CTAN/info/fontname">fontname</A>
<P>
<P>
<P>
<P>
<P><HR></TD></TR>
<TR><TD></TD><TD><TABLE BORDER=0><TR>
<TD valign=middle align=left>
<a href="http://www.cstug.cz/">
<IMG BORDER=0 SRC="images/logo.gif"
ALT="CSTUG" HEIGHT=51 WIDTH=165 ALIGN="right"><BR>
</TD><TD valign=top align=left><FONT SIZE="-1">
(c) 1997, 1998, 2003
Tomá¹ Hudec, Libor ©karvada
<BR>
Poslední aktualizace: 13.11.2004 23:15
</FONT></TD></TR></TABLE></TD></TR></TABLE>
</BODY>
</HTML>
|