|
Použití PostScriptových fontů v TeXu
Ještě než začnete: aby mohl použít PostScriptové fonty, TeX potřebuje
soubory s metrikami (zvané tfm ). Několik sad metrik je dostupných
v archívech; mechanismus generování nových je popsán
v Otázce Soubory metrik TeXovských fontů pro PostScriptové fonty.
Také potřebujete vlastní fonty. PostScriptové
tiskárny se sice dodávají již se sadou fontů zabudovaných, ale pro
rozšíření svého
repertoáru si většinou stejně musíte koupit jednu z komerčních nabídek fontů
(viz Výběr zvětšovatelných obrysových fontů).
Pokud používáte LaTeX 2e, nejlepším způsobem, jak dostat do svého dokumentu
PostScriptové fonty, je použít balík PSNFSS, který spravují Sebastian Rahtz
a Alan Jeffrey (CTAN: psnfss). Je podporován projekčním
týmem pro LaTeX3, takže zprávy o chybách by mohly a měly být brány do
úvahy. PSNFSS
poskytuje sadu balíků pro změnu standardních roman, sans-serif a typewriter
fontů. Např. times.sty nastaví fonty Times Roman, Helvetica a
Courier místo Computer Modern, zatímco avant.sty změní rodinu fontů
sans-serif na AvantGarde. Pro práci s těmito balíky jsou potřebné soubory
s metrikou
(pozor na problémy s kódováním! - viz Soubory metrik TeXovských fontů pro PostScriptové fonty)
a soubor s popisem fontu (.fd ) pro
každou rodinu, kterou chcete použít.
Výhodné je, že metriky pro společných 35 PostScriptových fontů pro
většinu tiskáren jsou začleněny do PSNFSS, zkomprimovány jako
CTAN: lw35nfss-zip
Pro starší verze LaTeXu existují nejrůznější schémata, z nichž
nejjednodušší pro použití jsou pravděpodobně makra PSLaTeX distribuovaná
s dvips.
Pro plain TeX můžete použít fonty, jaké chcete. Pokud kódování fontů
není stejné jako u Computer Modern, je na vás, abyste si předefinovali různá
makra a akcenty, anebo můžete použít mechanismus pro překódování fontů
dostupný v mnoha ovladačích a v ps2pk a afm2tfm.
Rafinovaný balík Lollipop Victora Eijkhouta (CTAN: lollipop) podporuje
deklaraci rodin fontů a styly podobným způsobem jako LaTeXovský NFSS,
takže se dá snadno použít s PostScriptovými fonty.
Některé společné problémy, které byly zmíněny, jsou diskutovány i jinde
(viz Problémy s použitím PostScriptových fontů).
Prohlížení souborů s PostScriptovými fonty
Většina TeXovských prohlížečů zobrazuje pouze bitové mapy pk fontů.
Pokud chcete prohlížet dokumenty s PostScriptovými fonty, máte tři
možnosti:
- Převést
.dvi soubor do PostScriptu a použít PostScriptový
prohlížeč. Některé moderní Unixové X implementace mají tohle
zabudováno (jako třeba NeXT-step). Uživatelé Unixu (X11), Windows,
OS/2 a MSDOSu mohou
použít volně dostupný GhostScript (CTAN: ghostscript), implementaci
kompletního PostScriptu úrovně 2.
- Pod Windows na PC, nebo na Macintoshi umí Adobe Type Manager zobrazit
PostScriptové fonty. TeXtures (Macintosh) pracuje podobně, pod Windows
pak lze použít program dviwindo od Y&Y pro prohlížení bitových
map.
(Detaily těchto doplňků: viz Komerční implementace TeXu.)
- Jestliže máte PostScriptové fonty formátu Type 1, použijte
ps2pk (CTAN: ps2pk) nebo gsftopk (navržený pro
použití s fonty programu ghostscript, CTAN: gsftopk) pro
výrobu
pk bitových map fontů, kterým váš prohlížeč bude rozumět.
Tak lze dosáhnout skvělých výsledků, které jsou vhodné i pro tisk na
zařízeních bez PostScriptu. Prověřte si právní podmínky, pokud chcete
tyto fonty získat.
Nejznámější PostScriptové fonty jako Times a Courier se dodávají
s formátem Type 1 na disku s Adobe Type Managerem (často dohromady
s Windows a část s OS/2).
Soubory metrik TeXovských fontů pro PostScriptové fonty
Výrobci fontů takoví jako Adobe opatřují metrikovým souborem každý font,
a to v afm (Adobe Font Metric) formě. Tento formát lze konvertovat do
tvaru tfm (TeX Font Metric). CTAN archivy obsahují předem
připravené metriky, které budou pro mnoho lidí více než dostatečné,
ale můžete si udělat konverzi i sami, pokud máte speciální potřebu.
Zajímavou otázkou je kódování fontů. Zatímco
všichni více či méně souhlasíme s pozicemi 96 znaků ve fontech (základní
ASCII sada), zbytek z (běžných) 256 se různí. Nejobvyklejší problémy jsou
s plovoucími akcenty a se speciálními znaky, jako je třeba označení libry
šterlinků. Existují tři způsoby, co s tím: buď změníte makra TeXu, která
odkazují na znaky (nic moc a náchylné na chyby), nebo změníte kódování fontu
(jednodušší, než si myslíte), anebo použijete
Virtuální fonty
abyste TeXu předstírali, že kódování je totéž, jaké používá on. Používání
LaTeXu dovoluje změnu kódování v TeXu. Podrobnosti si lze přečíst
v LaTeX Companion (viz Knihy o TeXu a příbuzná literatura).
V praxi, pokud často píšete jinak než anglicky (ale latinkou), se silně
doporučuje použití fontenc balíku s volbou ,,T1 `` pro výběr
T1 (také známé jako ,,Cork`` nebo ,,DC``) kódování.
Použití PostScriptových fontů v TeXu balík
podporuje PostScript (s virtuálními fonty) v tomto kódování.
Balík fontinst Alana Jeffreye (CTAN: fontinst) je konvertor
z afm do tfm napsaný v TeXu. Používá se pro generování souborů
s použitím LaTeXovského PSNFSS balíku k podpoře užívání PostScriptových
fontů. Jedná se o komplikovaný balík, nic pro slabé nátury, ale je dost silný
pro uspokojení většiny potřeb. Mnoho z jeho síly se vztahuje na použití
viz Virtuální fonty.
Pro poněkud jednodušší problémy je použitelný rychlý a efektivní Rokickiho
afm2tfm, distribuovaný s dvips (CTAN: dvips).
Poznamenejme, že metriky a styly, které se dodávají s dvips,
nejsou kompatibilní se současným LaTeXem.
Pro MacIntosh existuje program nazvaný EdMetrics, který se
tímhle (a dalšími věcmi) zabývá. Dodává se společně s distribucí
Textures, ale
de facto je to volný software, který lze najít na CTANu
v CTAN: edmetrics
Uživatelé MSDOSu mohou koupit
(viz Komerční implementace TeXu)
balík Font Manipulation Tools od Y&Y, který mezi jinými lahůdkami obsahuje
silný program afmtotfm.
Problémy s použitím PostScriptových fontů
Před typickým uživatelem LaTeXu, zkoušejícího balík
Použití PostScriptových fontů v TeXu,
se často vynoří tři problémy.
První: máte oznámit dvi ovladači, že používáte PostScriptové fonty.
V případě, že se jedná o dvips, znamená to přidání řádku do
souboru psfonts.map . Jinak dvips zkusí najít pk soubory.
Pokud font
není zabudován do tiskárny, musíte jej nějak získat (v mnoha případech to
znamená koupi od komerčního distributora). Pak je třeba instruovat ovladač,
aby zavedl fonty při každém tisku (mechanismus závisí na vašem ovladači).
Takže není zrovna dobré prostě instalovat metriky pro Optimu a
čekat, že to pojede. Musíte zaplatit těžké peníze za vlastní font, který
vám dodají (pro uživatele Unixu a MSDOSu) v pfb (Printer Font Binary)
tvaru.
Druhá: nemůžete očekávat, že váš prohlížeč najednou začne zobrazovat
PostScriptové fonty. Mnohé z nich vědí pouze o PK bitových mapách fontů jako
třeba Computer Modern. Můžete je vytvořit z PostScriptových fontů, pokud
jste si koupili pfb soubory, použitím ps2pk (CTAN: ps2pk).
Tak se také dají použít tyto fonty pro ovladače zařízení bez PostScriptu,
jaké jsou třeba v emTeXu. Je na vaší zodpovědnosti ujistit se, že
neporušujete licenční omezení na fonty, které jste koupili.
Třetí: natahování a smršťování (rozpal) mezi slovy je funkcí metriky
fontu. Není
specifikováno v afm souboru, takže rozdílné konvertory vybírají rozdílné
hodnoty.
Když nejste pozorní,
PostScriptová metrika, kterou přináší
PSNFSS, dělá celkem těsné nastavení, které může produkovat příliš velký
počet rozdělených slov nebo přetečených boxů.
Pokud máte potíže, Alan Jeffrey doporučuje následující nastavení
v souboru balíku:
\tolerance800
\emergencystretch2em
\doublehyphendemerits5000
\hfuzz0pt
\leftskip0pt minus 1pt
\rightskip0pt minus 1pt
Budoucí verze těchto fontů bude mít implementovánu volnější implicitní
sazbu, takže tato nastavení by se měla stát zbytečnými.
Výběr zvětšovatelných obrysových fontů
Pokud se zabýváte samotným textem, můžete použít libovolný z 20 000 fontů(!)
ve formátu Adobe Type 1 (zvané PostScriptové fonty ve světě TeXu a ATM
fonty ve světě DTP), nebo některý z několika set fontů v TrueType formátu.
To samozřejmě za podmínky, že váš prohlížecí a tiskový ovladač podporuje
zvětšovatelné obrysové fonty.
TeX sám se stará jenom o metriky, nikoliv o skutečný vzhled znaků.
Je potřeba pouze vytvořit TeXovský soubor s metrikou tfm použitím
nějakého prostředku jako afm2tfm, afmtotfm (od Y&Y,
(viz Komerční implementace TeXu) nebo
fontinst. Pro prohlížecí nebo tiskový ovladač potřebujete
skutečné obrysové fonty (pfa pro zobrazení PostScriptu, pfb pro ATM na
IBM PC, Macovské obrysové fonty na Macintoshi).
Jestliže také potřebujete matematiku, jste poněkud omezeni požadavky, jež má
TeX na matematické fonty (detaily viz příspěvek B.K.P. Horna
ve sborníku konference TUGu konané v roce 1993 v Astonu, otištěný
v TUGboatu, Vol 14(3), 1994).
Pro matematiku je tedy několik možností:
- Computer Modern
(75 fontů -- optické zvětšování) Donald E. Knuth.
Poznamenejme, že CM jsou dostupné ve zvětšovatelné obrysové
formě. Existují komerční i volně dostupné verze, jsou jak Adobe Type 1,
tak TrueType verze. Některé z nich mají ,,komerční úroveň`` s plně ručně
laděným ovládáním, další vyhlížejí velmi uboze, zatímco jiné jsou pouze
nekompatibilní s Adobe Type Managerem (ATM).
- Lucida Bright a Lucida New Math
(25 fontů) Chuck Bigelow a Kris
Holmes.
Lucida je rodina příbuzných fontů včetně patkových, bezpatkových,
bezpatkových s pevnou šířkou, kaligrafických, blackletter, faxových,
ručně psaných spojovaných Holmesových fontů atd. Nejsou tak
,,vřetenovité`` jako Computer Modern s velkým x-ovým rozměrem, zahrnují
rozsáhlejší sadu matematických symbolů, operátorů, relačních a
ohraničovacích znaků, než CM (přes 800 na rozdíl od 384; mimo jiné
obsahuje také AMS msam a msbm sadu symbolů).
Plánované ,,Lucida Bright Expert`` (14 fontů) připojí patkové písmo
s pevnou šířkou, další ručně psaný font, malé kapitálky, tučné
matematické písmo, stojatou ,,matematickou kurzívu``
atd. Distribuční sada obsahuje podporu pro plain TeX a
LaTeX 2.09. Podpora pro LaTeX 2e je zajištěna v
Použití PostScriptových fontů v TeXu
díky Sebastianu Rahtzovi.
- MathTime 1.1
(3 fonty) TeXplorators (Michael Spivak).
Sada obsahuje matematickou kurzívu, symboly a rozšíření fontů, navržené
pro snadnou práci s Times-Roman. Jsou zpravidla používány s písmem Times,
Helvetica a Courier (jež jsou rezidentní na mnoha tiskárnách a
jsou podporovány některými verzemi PC). Navíc tuto můžete základní
sadu doplnit fontem Adobe Times Smallcap a snad i sadou fontů Adobe
,,Math Pi``, která zahrnuje blackboard bold, blackletter a script.
Distribuce obsahuje podporu pro plain TeX a LaTeX 2.09 (včetně kódu
pro spojení s Adobe Math Pi 2 a Math Pi 6). Podpora pro LaTeX 2e
je zajištěna v
Použití PostScriptových fontů v TeXu
díky Sebastianu Rahtzovi.
- Adobe Lucida, LucidaSans a LucidaMath
(12 fontů).
Lucida a LucidaMath jsou obecně považovány za poněkud tučné. Tři
matematické fonty obsahují pouze glyfy z matematické kurzívy CM,
symboly a rozšířené fonty.
Podpora pro použití LucidaMath v TeXu není moc dobrá, musíte si dát
práci s překódováním fontů atd.
(V jistém smyslu je tahle sada předchůdcem fontové sady LucidaBright a LucidaNewMath.)
- Concrete, AMS matematické fonty atd.
Donald E. Knuth a AMS.
Někdy jsou zmiňovány jako alternativa k CM, ale ve skutečnosti jsou
doplňkem, poněvadž je třeba s nimi použít alespoň základní
matematické fonty CM.
- Proprietary fonts
Různé zdroje.
Jelikož vysoce kvalitní sady fontů v obrysovém
formátu fungujícím v TeXu poskytují vydavatelům skutečně
konkurenceschopné dokumenty, zaplatili si mnozí hodně peněz za
výrobu takových fontů na zakázku. Naneštěstí, tyto sady nejsou
k dostání volně na trhu, ačkoli jsou pravděpodobně mnohem úplnější než
sady jiné.
- Mathptm
(4 fonty) Alan Jeffrey.
Sada obsahuje matematickou kurzívu, symboly, rozšířené a virtuální Roman
fonty, vytvořené z fontů Adobe Times, Symbol, Zapf Chancery a Computer
Modern. Mathptm jsou volně dostupné a výsledné PostScriptové soubory
mohou být volně sdíleny. Obsahují mnoho CM matematických symbolů.
Podpora pro LaTeX 2e v
Použití PostScriptových fontů v TeXu
je díky Alanu Jeffreymu and Sebastianu Rahtzovi.
První tři sady fontů jsou dostupné ve formátech vhodných pro IBM PC/Windows,
Macintosh a Unix/NeXT od Y&Y a od Blue Sky Research
(detaily viz Komerční implementace TeXu). Fonty MathTime lze
také získat od:
TeXplorators, 1572 West Gray #377, Houston TX 77019, USA.
Velmi omezený výběr matematických fontů je přímým důsledkem toho, že
musí být navrženy pro použití v TeXu, čímž ztrácí něco ze své
přitažlivosti pro jiné trhy. Navíc, trh s komerčními fonty pro TeX je
nepatrný (pro porovnání, například balíků fontů #1 Microsoft TrueType se
prodalo asi 10 miliónů kopií během několika týdnů po vydání Windows 3.1!).
Textové fonty formátu Type 1 jsou dostupné od mnoha prodejců včetně Adobe,
Monotype, Bitstream. Vyhněte se levným produktům neznámých výrobců:
nejen že byste podporovali jejich neetické chování a poškozovali
skutečné tvůrce písem, ale také velmi pravděpodobně byste pořídili
zmetek.
Fonty se nemusí dobře zarovnávat, nemusí mít standardní doplněk 228
glyfů, anebo třeba neobsahují soubory s metrikami (je třeba udělat TFM
soubory). Také
se vyhněte TrueType fontům ode všech možných prodejců kromě velkých.
TrueType fonty jsou o řád obtížněji ,,hintovatelné``
než fonty Type 1, a proto TrueType fonty odjinud než od Microsoft a Apple
mohou být podezřelé. Navíc můžete narazit ještě na další problémy
s TrueType fonty, třeba, že servisní střediska s nimi odmítají pracovat.
Vkládání PostScriptových obrázků v LaTeXu
LaTeX 2e (nový standard LaTeXu)
obsahuje standardní balík umožňující včlenění grafiky, otáčení, práci
s barvami a další rysy závislé na výstupních ovladačích. Balík je
zdokumentován ve druhém vydání Lamportova manuálu
(viz Knihy o TeXu a příbuzná literatura) a dá se získat
v CTAN: graphics
Pokud nepoužíváte LaTeX 2e, asi nejlepší bude použít makro psfig , které
napsal Trevor Darrell, dostupné v CTAN: psfig
Budete také potřebovat konverzní program z dvi do PostScriptu, který
podporuje \special . Ovladače zmíněné
v Otázce Konverzní programy z DVI do PostScriptu to umějí,
a přinášejí s sebou verzi psfig připravenou pro použití s nimi. Makro
psfig pracuje nejlépe s Encapsulovaným PostScriptem (EPS). Zejména
psfig potřebuje, aby soubory obsahovaly BoundingBox (viz Apendix H
v PostScript Language Reference Manual). Když nemáte EPS soubor,
váš život se může zkomplikovat.
Další věcí kolem vkládání PostScriptového obrázku je, že obrázek není
součástí dvi souboru, ale je včleněn až když použijete konvertor do
PostScriptu. Důsledkem toho je, že většina dvi prohlížečů ukáže jenom
prázdné místo rezervované TeXem pro váš obrázek, nikoliv obrázek
samotný.
Anil K. Goel napsal dlouhý dokument podrobně popisující, kterak vkládat
obrazce, obrázky a ilustrace do LaTeXovských dokumentů. Je dostupný
jako CTAN: figsinlatex
Zrcadlově převrácený tisk
Pro offsetový tisk bývá často potřeba připravit zrcadlově převrácené
předlohy. Postscriptovým řešením tohoto problému je napsat na začátek
dokumentu v plain TeXu (nebo do preambule v LaTeXu) řádek
\special{!userdict begin /bop-hook{hsize 0 translate -1 1 scale} def end}
Tím dosáhneme zrcadlového otočení kolem svislé osy.
Pokud chceme dokument převracet okolo vodorovné osy, vypadá řádek takto:
\special{!userdict begin /bop-hook{0 vsize translate 1 -1 scale} def end}
Komplexnější řešení (s možností zvětšování/zmenšování textu) je na
ftp://ftp.cstug.cz/pub/local/cstug/sojka/mirrorps/mirror.ps
Pokud používáte emTeX s jeho ovladači (dviscr,
dvihplj), lze jimi docílit zrcadlového převrácení i bez
PostScriptu. Například převrácení kolem vertikální osy stránky zajistí
volba /tr7 .
|