Kapitola 8. Výstupní formáty generovatelné z DocBooku

Obsah

8.1. HTML
8.1.1. Pomocí DSSSL stylů
8.1.2. Pomocí XSL stylů
8.2. Tištěný výstup
8.2.1. Pomocí DSSSL stylů
8.2.2. Pomocí XSL stylů (přes formátovací objekty)
8.2.3. Přes LaTeX
8.2.4. Přes HTML
8.3. HTML Help
8.4. JavaHelp
8.5. Nápověda pro Eclipse
8.6. TeXInfo, manuálové stránky

V úvodní kapitole 2 – „První kroky jsme se seznámili s tím, jak z DocBooku generovat nejběžnější výstupní formáty pomocí DSSSL a XSL stylů. V této kapitole se podíváme na další metody a výstupní formáty, které lze společně s DocBookem použít. Celý text přitom bude rozčleněn podle výstupního formátu. Snadno tak zjistíte, jaké jsou alternativní možnosti pro získání požadovaného výstupu. Už z principu nemůže být seznam kompletní, a přidání podpory dalšího výstupního formátu je celkem snadné, protože XML dokumenty lze velmi snadno zpracovávat a dále konvertovat.

8.1. HTML

8.1.1. Pomocí DSSSL stylů

jade -d c:\docbook\dsssl\html\docbook.dsl -t sgml c:\docbook\jade\xml.dcl dokument.xml
jade -d c:\docbook\dsssl\html\docbook.dsl -V nochunks -t sgml c:\docbook\jade\xml.dcl dokument.xml > dokument.html

8.1.2. Pomocí XSL stylů

saxon dokument.xml c:\docbook\xsl\html\chunk.xsl
saxon -o dokument.html dokument.xml c:\docbook\xsl\html\docbook.xsl
xsltproc c:/docbook/xsl/html/chunk.xsl dokument.xml
xsltproc -o dokument.html c:/docbook/xsl/html/docbook.xsl dokument.xml

8.2. Tištěný výstup

8.2.1. Pomocí DSSSL stylů

Výstup do RTF:

jade -d c:\docbook\dsssl\print\docbook.dsl -t rtf c:\docbook\jade\xml.dcl dokument.xml

RTF lze přímo načíst do většiny textových editorů. Chceme-li získat PDF, můžeme RTF dokument zpracovat pomocí textového editoru (např. MS Word) a Adobe Distilleru (nebo jeho funkční obdoby).

PDF a PS výstup lze snadno získat i pomocí výstupu do TeXu. Musíme mít nainstalovanou poměrně novou verzi TeXu s formátem JadeTeX. Poslední verze JadeTeXu je k dispozici na adrese http://jadetex.sourceforge.net/.

jade -d c:\docbook\dsssl\print\docbook.dsl -t tex -V tex-backend c:\docbook\jade\xml.dcl dokument.xml
pdfjadetex dokument
pdfjadetex dokument
pdfjadetex dokument

Pro vygenerování PostScriptové verze můžeme použít příkazy:

jade -d c:\docbook\dsssl\print\docbook.dsl -t tex -V tex-backend c:\docbook\jade\xml.dcl dokument.xml
jadetex dokument
jadetex dokument
jadetex dokument
dvips dokument

JadeTeX musíme spustit třikrát, aby se správně spočítala čísla stran v obsahu a v křížových odkazech.

8.2.2. Pomocí XSL stylů (přes formátovací objekty)

V první fázi musíme získat formátovací objekty:

saxon -o dokument.fo dokument.xml c:\docbook\xsl\fo\docbook.xsl

nebo

xsltproc -o dokument.fo c:/docbook/xsl/fo/docbook.xsl dokument.xml

Výsledné formátovací objekty pak musíme zpracovat některým z procesorů FO.

XEP

xep -fo dokument.fo -pdf dokument.pdf
xep -fo dokument.fo

Nebo jednorázově včetně transformace:

xep -xml dokument.xml -xsl c:/docbook/xsl/fo/docbook.xsl

PassiveTeX

PassiveTeX je procesor FO postavený nad TeXem. Pro jeho činnost je potřeba moderní instalace TeXu. Aktuální verze PassiveTeXu je dostupná na adrese http://www.tei-c.org/Software/passivetex/.

Pro získání PDF z FO pak stačí použít příkaz:

pdfxmltex dokument.fo

Pokud chceme, aby nám seděla čísla stran v obsahu, musíme poslední příkaz spustit dvakrát po sobě.

PostScript získáme obdobně. Nejprve si vygenerujeme formátovací objekty a pak spustíme příkazy:

xmltex dokument.fo
xmltex dokument.fo
dvips dokument

FOP

fop -fo dokument.fo -pdf dokument.pdf

XFC

Program XFC umožňuje formátovací objekty konvertovat do formátů RTF, WordML a ODF.

fo2rtf dokument.fo dokument.rtf
fo2wml dokument.fo dokument.xml
fo2odt dokument.fo dokument.odt

Kromě toho obsahuje příjemné grafické prostředí XSL Utility, pro snadné spouštění transformací DocBooku do dalších formátů.

8.2.3. Přes LaTeX

Na adrese http://db2latex.sourceforge.net/ je k dispozici sada XSL stylů, které jsou schopné převést docbookový dokument na LaTeX. Umíte-li LaTeX je to celkem dobrá cesta, jak získat typograficky mnohem dokonalejší dokument než z klasických DSSSL nebo XSL stylů. Styly potřebují většinou drobně upravit – jednak proto, abyste s nimi mohli zpracovat české dokumenty, a také proto, aby výstup odpovídal přesně vašim potřebám.

8.2.4. Přes HTML

V nouzi nejvyšší můžeme z DocBooku vygenerovat HTML a pomocí prohlížeče nebo textového procesoru jej vytisknout. Není to zdaleka nejlepší řešení, ale někdy se může hodit.

8.3. HTML Help

Pro generování HTML Helpu musíme mít HTML Help Workshop – http://msdn.microsoft.com/library/tools/htmlhelp/chm/HH1Start.htm.

saxon dokument.xml c:\docbook\xsl\htmlhelp\htmlhelp.xsl "htmlhelp.encoding=windows-1250" "chunker.output.encoding=windows-1250" "saxon.character.representation=native"
hhc htmlhelp.hhp

8.4. JavaHelp

Pro prohlížení JavaHelpu musíte mít k dispozici JavaHelp – http://java.sun.com/products/javahelp/.

saxon dokument.xml c:\docbook\xsl\javahelp\javahelp.xsl "javahelp.encoding=windows-1250" "chunker.output.encoding=windows-1250" "saxon.character.representation=native"
jhindexer *.html
jar -cvf help.jar *
hsviewer jhelpset.hs help.jar

8.5. Nápověda pro Eclipse

Eclipse je open-source vývojové prostředí.

saxon dokument.xml c:\docbook\xsl\eclipse\eclipse.xsl "eclipse.plugin.id=com.example.help"

Vygenerované soubory pak stačí nahrát do adresáře com.example.help (nebo jiného v závislosti na nastavení parametru) v adresáři plugins a restartovat Eclipse.

8.6. TeXInfo, manuálové stránky

Projekt docbook2X – http://docbook2x.sourceforge.net/.

Manuálové stránky umí generovat i novější verze standardních XSL stylů.

© Jiří Kosek 2007
Tento dokument je určen výhradně pro osobní potřebu seznámení se systémem DocBook. Jakékoliv jiné použití, včetně dalšího šíření, pořizování kopií apod. je výslovně zakázáno a bude považováno za porušení autorských práv.