| |||
|
Vyhledávání podle slov v CS-FAQ
Skupina na Ohio State University (USA) pracuje na společném dokumentovém formátu založeném na SGML s cílem, aby se libovolné formáty daly vzájemně převádět. „Vstupní filtry“ poskytuje FrameMaker s cílem překladu z cizího formátu (pravděpodobně včetně TeXu) do vlastního.
Další informace
viz
Zde je snahou emulovat unixový nroff, který formátuje text na obrazovce, jak jen to jde nejlépe, a to ze stejného vstupu jako unixový sázecí program troff. Ralph Droms (droms@bucknell.edu) má stylový soubor a program, který způsobuje, že je LaTeX rovnocenný s nroff, ale neporadí si dobře s tabulkami a s matematikou. Jiné možnosti jsou screen.sty, dvi2tty, Crudetype nebo catdvi. Poslední jmenovaný program je schopen generovat výstup v Latin-1 nebo UTF-8. catdvi bylo počato jako náhrada dvi2tty, ale zatím nemůže být pro tento účel doporučeno. Použít můžete konverzní program z LaTeXu do ASCII, l2a, ačkoliv je to skutečně hodně „odTeXovávací“ program. Základní odTeXovávací program je detex, který před zápisem na výstup smaže všechny komentáře a řídicí sekvence ze vstupu. Původním záměrem bylo připravit vstup pro jednoduchý korektor překlepů.
CTAN: txtdist
EncTeX je rozšíření TeXu, které vytvořil Petr Olšák. Účelem tohoto
rozšíření je odstínit vnitřní kódování TeXu od kódování používaného
v operačním systému. Originální TeX obsahuje pro tento účel vektory
xord/xchr/xprn, jež mohou být modifikovány při kompilaci TeXu.
V implementaci emTeX pro OS/2 a DOS lze využít TCP tabulek definovaných
při generování formátu. Současná verze TeXu založená na web2c umožňuje
specifikaci kódování pomocí TCX tabulek, jež lze zadat jak při generování
formátu, tak speciálními příkazy při spuštění TeXu. EncTeX
zpřístupňuje vektory xord/xchr/xprn pomocí nových primitiv. Překódování
lze tedy měnit při běhu TeXu. Lze však vektory modifikovat při
generování formátu a následně novým primitivům přiřadit
Překódování vstupních znaků je v LaTeXu řešno v zásadě dvěma způsoby.
Prvním z nich je využití TCX tabulek (resp. TCP tabulek v emTeXu).
Omezíme-li se na operační systémy používající osmibitové kódování, pak je
tato metoda prakticky shodná s překódováním pomocí encTeXu. Druhou
možnost nabízí balíček
\def\testujznak{\futurelet\znak \badejnadznakem}
pak může pracovat s neúplným znakem. EncTeX řeší koverzi kódu ve vstupním procesoru bez nutnosti měnit kategorii znaků. TeX tedy vždy vidí celistvé znaky s „normální“ kategorií. Při předávání dokumentů po síti mezi operačními systémy dochází někdy ke změně kódování dokumentů. Podobně jako konverze mezi ASCII a EBCDIC dochází u některých ftp klientů ke změně kódování češtiny, podobně se chovají někeré moduly web serverů. Informace o kódování, zapsaná ve formě speciálního komentáře, může tedy být nesprávná. Obsahuje-li dokument definice vektorů xord/xchr/xprn pomocí primitiv encTeXu, pak tyto definice projdou stejnou transformací jako celý dokument a údaje o kódování jsou tudíž správné.
SGML je velice zajímavý nástroj pro správu dokumentů a jejich výměnu,
neklade však důraz na formátování, pro formátování dokumentů byl navržen
ISO standard DSSSL (
Protože HTML je zvláštním případem SGML, nepotřebujeme pro převod z něho do TeXu nebo LaTeXu zvláštní systém. Přesto však Nathan Torkington (Nathan.Torkington@vuw.ac.nz) vyvinul z HTML ovladače v balíku Xmosaic od NCSA html2latex. Program načítá HTML soubor a generuje z něj soubor LaTeXový. Konverzní kód je předmětem omezení NCSA, ale kompletní zdrojový text lze získat na CTAN: html2latex Michel Goossens a Janne Saarela vydali velice užitečný souhrn SGML a veřejně dostupných nástrojů pro tvorbu manipulaci s SGML soubory. Vyšel v TUGboatu 16(2). Viz též Otázku Budúce webové technológie a TeX.
Převod z TeXu do HTML není triviální. TeX není značkovací, ale sázecí systém, takže se koncepčně od HTML velmi liší. S LaTeXem máte víc naděje, ale ani zde není převod zadarmo. Je dobré poznamenat že a) chcete-li skutečně kvalitní Webový dokument, je lepší přepsat ho znovu, a b) HTML (i HTML3) má velmi chudé sázecí schopnosti a cokoliv netriviálního (matematika, kterou ale TeX zvládá výborně; budoucnost pro metamatiku — viz Otázku Budúce webové technológie a TeX) transformuje do grafiky. Je nutné uvědomit si, že HTML dokument nespecifikuje svoje přesné vykreslení a toto je ponecháno do určité míry na prohlížeči. Proto, když chcete čtenářům zobrazit přesnou kopii vzhledu vašeho dokumentu, používejte formáty jako PDF. V součásnosti máme k dispozici tyto možnosti:
http://www.mayer.dial.pipex.com/samples/example.htm.
Odkazovaná stránka poskytuje seznam za a proti formou porovnání
Ak chcete vytvoriť hypertextový dokument pomocou LaTeXu, napríklad pre World-Wide Web, uvážte štyri technológie (prekrývajúce sa).
Projekt HyperTeX má za cieľ rozšíriť funkčnosť všetkých odkazových
príkazov pre LaTeX (vrátane obsahu) vytváraním príkazov
HyperTeXovská špecifikácia určuje, že príslušný prezerač/prekladač
musí rozpoznávať nasledujúce príkazy
Príkazy href, name a end sa používajú na definovanie základných hypertextových operácií spojenia jednotlivých častí dokumentu.
Ďalšie detaily sú dostupné na
Existujú tri možnosti: previesť PostScript do PDF programom Distiller, konvertovať DVI súbor alebo použiť program pre priamy prevod z TeXu do PDF (pdftex Han The Thanha alebo VTeX od spoločnosti MicroPress – viď Otázku Komerční implementace TeXu a Otázku TeX/LaTeX pro různé počítače). Pre jednoduché dokumenty (bez hyper-referencií) môžete:
Aby sme preložili všetky krížové odkazy v LaTeXu do Acrobatovských
spojení, potrebujeme LaTeXovský balík, ktorý vhodne predefinuje
vnútorné príkazy LaTeXu. Existujú dva takéto balíky pre LaTeX 2e,
obidva založené na HyperTeXovských špecifikáciách
(pozri Otázku Vytváranie hypertextových dokumentov v TeXu).
Prvý je hyperref od Sebastiana Rahtza
(dostupný z CTAN: hyperref
a druhý je hyper od Michaela Mehlicha
(CTAN: hyper).
Balík hyperref používa konfiguračný súbor pre zistenie, akým spôsobom
bude generovať hypertext. Môže pracovať pomocou primitív PDFTeXu,
hyperTeXovských príkazov typu Neexistuje voľne dostupná implementácia všetkých funkcií Adobe Distilleru, ale posledné verzie ghostscriptu poskytujú celkom spoľahlivý proces „destilácie“ (vyvarujte sa však problémom preberaným v Otázke Kvalita PDF z PostScriptu). Sám Distiller je v skutočnosti celkom lacný (aspoň pre akademické prostredie). Na prezeranie (a tlač) výsledných súborov je dostupný Adobe Reader (predtým známy ako Adobe Acrobat Reader) na celkom slušný rozsah platforiem. Na platformách, pre ktoré dostupný nie je, vie PDF súbory zobraziť kombinácia aktuálnych verzií programov ghostscript a ghostview, prípadne GSview.
Mnohokrát je ghostscript v kombinácii s prehliadačom preferovaný
oproti programu Adobe Reader. Adobe Reader pre Windows napríklad zamkýňa
Každý rozumný postscriptový dokument (vrátane výstupu dvips) sa dá
skonvertovať do PDF, napríklad použitím dostatočne novej verzie
ghostscriptu, programu PStill Franka Siegerta (shareware;
Avšak aj keď sa to dá spraviť takmer vždy, výsledky často nie sú akceptovateľné. Najčastejším problémom je zlá reprezentácia glyfov znakov, ktoré dopĺňajú dokument. Nasledujúce odpovede ponúkajú riešenie týchto (a iných) problémov zlej prezentácie. Zodpovedané otázky sú:
Je dobré poznamenať, že Adobe Reader 6 (vydaný v polovici roku 2003) túto neostrosť neprejavuje. Je to dobrá správa, ale určite bude trvať dlhší čas, kým bude každý používateľ vybavený touto (alebo novšou) verziou, takže riešenia spomenutých problémov tu ešte nejaký čas zostanú.
Trieda Dotyčné dve voľby sú:
..ensuremath{n}“; môžu byť použité nezávisle, ale zvyčajne
nie sú.
Návod nie je bezchybný: spolieha sa na to, že
Toto je zdaleka najčastejší problém: symptómom je neostro vyzerajúci text dokumentu. Väčšina ľudí používa na prezeranie svojich PDF súborov Adobe Reader: Reader je distribuovaný zdarma a je dobre dostupný, má však mnoho nedostatkov. Jedným z nich je neschopnosť spracovania bitmapových fontov (minimálne vo verziách skorších než nedávno vydaná verzia 6).
Bitmapové fonty teda v našich PostScriptoch nechceme: s nimi sa znaky
v zobrazení programom Reader objavujú ako rozmazané machule,
z ktorých sa často nedajú rozoznať pôvodné písmená a často sú zle umiestnené na
riadku. Napriek tomu má väčšina TeXovských systémov nakonfigurované
dvips na použitie Naším riešením sú Adobe Type 1 verzie potrebných fontov. Kedže Adobe fonty Type 1 predáva, Reader bol od začiatku vytvorený tak, aby si s nimi vedel dobre poradiť.
Samozrejme, ak váš dokument používa iba fonty od Adobe (fonty ako
Väčšina ľudí však na začiatok používa fonty
Väčšina moderných systémov má nainštalované fonty pripravené na použitie a každý
systém inštalovaný pred menej než 3 rokmi má dvips konfiguračný súbor
„ dvips -Ppdf myfile -o myfile.psToto môže produkovať varovné hlásenie o nenájdení konfiguračného súboru: dvips: warning: no config file for `pdf'alebo niečo podobné, alebo hlásenie o nenájdení súboru fontu: dvips: ! Couldn't find header file cmr10.pfbKaždé zo zlyhaní signalizuje, že váš systém fonty neobsahuje.
Spôsob používania fontov, ktorý nezahŕňa sofistikovanosť mechanizmu
dvips -Pcmz -Pamz myfile -o myfile.psMôžete sa tu stretnúť s rovnakými varovnými hláseniami ako boli uvedené vyššie. Ak váš systém fonty neobsahuje, budete potrebovať fonty nainštalovať.
Spravili ste všetko, čo vám radilo FAQ, máte správne nainštalované potrebné fonty, zobrazujú sa vo výstupe dvips, ale stále dostávate po destilácii pomocou programu ghostscript výstup neostrých znakov.
Problém mohol vzniknúť z príliš starej verzie programu ghostscript,
ktorú môžete používať priamo, alebo cez skript ako ps2pdf
(distribuovaný so samotným ghostscriptom), dvipdf alebo
podobný. Hoci ghostscript mal schopnosť destilácie od verzie 5.50,
uvedená verzia vedela produkovať iba bitmapový Type 3 výstup ľubovolného fontu
iného než základných 35 fontov ( Ak teda váš PDF výstup stále vyzerá neostro v programe Acrobat Reader, aktualizujte ghostscript. Nová verzia by mala byť samozrejme aspoň verzia 6.50, je však dobrým pravidlom siahnuť po najnovšej verzii (verzia 8.12 v dobe písania anglickej verzie tejto otázky – rok 2003).
Mali ste problémy s rozdeľovaním slov a niekto vám poradil, aby ste na ich
vyriešenie použili príkaz „ V skutočnosti sa jedná o podobný problém, aké sú mnohé ďalšie pri zhoršenej kvalite PDF výstupu (viď Otázku Kvalita PDF z PostScriptu): opustili ste vaše predchádzajúce nastavenie používajúci Type 1 verzie CM fontov a dvips vložilo do výstupu vášho dokumentu Type 3 verzie EC fontov (poznamenajme len, že kódovanie fontov T1 nemá priamo nič spoločné s typom fontov Type 1). Ako však je poznamenané v Otázke Hľadanie 8bitových Type 1 fontov, Type 1 verzie fontov podobných CM v T1 (alebo ekvivalentnom) kódovaní sú dostupné ako sady „skutočných“, ako aj virtuálnych fontov. Jedným riešením je preto používanie jednej z týchto alternatív.
Ďalšou možnosťou je zmena celej rodiny fontov na niečo ako
Ak používate Acrobat Distiller na tvorbu PDF výstupu, môžete nájsť určité chýbajúce znaky. Toto sa môže prejaviť ako nesprávne matematické rovnice (napríklad chýbajúce znaky '-' ) alebo chýbajúce časti väčších symbolov. Staré verzie Distilleru mali vo zvyku ignorovať pozície znakov 0–31 a 128–159 pri každom fonte. Fonty Adobe nikdy tieto pozície nevyužívajú, tak prečo by mal Distiller?
Odpoveď je: „Pretože Adobe neprodukuje všetky fonty na svete.“ Fonty ako
Používatelia TeXu so starou verziou Distilleru sa zatiaľ
potrebovali vysporiadať so svojimi fontami. Pomáha im dvips,
konkrétne prepínač Ani tento prepínač však neprichádza bez problémov. Verzie dvips nižšie než 2003 ho aplikujú aj na Adobe fonty, čo zapríčiní viď Otázku Zvláštne znaky vo výstupe dvips . Problém je našťastie vysvetliteľný. Avšak dokument používajúci fonty CM i fonty špecifické pre Adobe má problém. Jediným skutočným riešením je buď aktualizácia dvips, alebo minúť peniaze na aktualizáciu Distilleru.
Číst XML nebo SGML lze pomocí důmylsného makroprogramování. Dvěma příklady balíčků, které byly vyvinuty za tímto účelem a jsou volně dostupné, jsou xmltex Davida Carlislea a GMLbase. Při psaní je xmltex poněkud vyspělejší než SGMLbase a nabízí praktické řešení sazby XML dokumentů. SGMLbase byl vytvořen, aby se vypořádal s SGML stejně dobře jako s XML, ale v současnosti je to tak akorát příklad na hraní.
Využití TeXu umožňující vysázení XML souborů je backendový procesor
pro formátovací objekty XSL serializované jako XML. PassiveTeX
Sebastiana Rahtze používá balík Další možností je použít CONTeXt, Otázku Co to je CONTeXt?.
xmltex: CTAN: base
Bohužiaľ neexistuje žiadny obecný postup, s ktorým by ste uspeli pri riešení
tejto úlohy. Pre podrobnosti si pozrite
Otázku Aký je vzťah medzi LaTeXom a Preklad dokumentu navrhnutého pre LaTeX do dokumentu pre čistý TeX obnáša opatrné zahrnutie (alebo inú re-implemenáciu) všetkých častí LaTeXu, ktoré dokument používa a nie sú poskytované čistým TeXom.
Font pozostáva z množstva glyfov. Aby sme ich mohli tlačiť, musia byť kódované (viď Otázku Čo sú to kódovania?). 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). 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 Akcentovaná slova se nedělí). 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 Komerční implementace TeXu (voľne dostupné verzie sa tiež dajú získať — viď Projekt TeXtrace). 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. 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é. Corkovské kódovanie je implementované virtuálnymi fontami viz Použití PostScriptových fontů v TeXu, pre PostScriptové fonty a tiež balíkmi fontov txfonts a pxfonts (viď Otázku Výběr zvětšovatelných obrysových fontů).
Inde vám odpoveďe na tieto „FAQ“ odporučia používať 8bitový font na povolenie diakritiky vo flektívnych jazykoch (viď Otázku Akcentovaná slova se nedělí) a použite Type 1 fontov na zaručenie toho, že dostanete kvalitné PDF (viď Nesprávny typ fontov v PDF). Tieto odporúčania boli protichodné. Nebolo možné vymeniť voľne dostupné CM fonty za voľne dostupné Type 1 fonty v corkovskom (alebo podobnom) kódovaní. Prvý prístup, ktorý začal pomáhať s touto priamou výmenou, bol vývoj virtuálnych fontov, ktoré majú dobrý prístup ku corkovskému kódovaniu (viď nižšie). V súčasnosti však máme dostupné skutočné Type 1 fonty. Ako vždy máme k dispozícii „bohatý“ výber (tri voľne dostupné, dve komerčné a jednu shareware verziu).
Virtuálne fonty (viď Otázku Virtuální fonty) nám pomáhajú vysporiadať
sa s týmto problémom, kedže nám dovoľujú mapovať časti DVI súboru
na jednotlivé znaky vo virtuálnych fontoch. Môžeme teda vytvoriť znak „'e“
pomocou znovuvytvorenia DVI príkazov, ktoré vyplývajú z príkazov
Existujú dve ponuky virtuálnych fontov založených na 8bitových CM
fontoch. Sú to sady Komerčné fonty 8bitové fonty typu CM fontov sú celkom lacné, ale stoja viac, než si tento autor môže bežne dovoliť... Y&Y poskytuje fonty „European Modern“, rozšírenie CM fontov, ktoré môže byť používané s kódovaním T1 alebo LY1. Tieto fonty sú z rovnakej stajne, ktorá nám zadarmo poskytla AMS/Blue Sky Research/Y&Y fonty. Sú mierne rozšírené, aj keď nepokrývajú všetky oblasti T1 kódovania a neposkytujú chaos veľkostí ako EC fonty). Micropress poskytuje úplnú EC sadu v Type 1 formáte (ako časť ich množstva obrysových fontov pôvodne distribuovaných v METAFONT formáte). Ďalšie informácie nájdete v Otázke Komerční implementace TeXu. Shareware distribúcia viď Otázku TeX/LaTeX pro různé počítače poskytuje sadu Type 1 EC fontov (CTAN: bakoma-texfonts) ako extra shareware voľbu (podľa znalostí autora sú tieto fonty zatiaľ dostupné iba používateľom BaKoMa TeXu; sú archivované vo formáte, ktorý nie je verejne dostupný). Nakoniec môžete použiť jeden z nespočetne mnoho textových fontov v Type 1 formáte (so zodpovedajúcou PSNFSS metrikou pre T1 kódovanie, alebo metrikou pre nejaké iné 8bitové kódovanie ako LY1). Ak však použijete niekoho textový font, budete musieť nájsť príslušnú rodinu matematických fontov, čo je netriviálna záležitosť (viď Otázku Výběr zvětšovatelných obrysových fontů).
| |||
|