User Tools

Site Tools


docbook:index

This is an old revision of the document!


Docbook

Cómo instalar Docbook en un sistema windows para generar documentos en html (una sóla página o varias páginas), chm, pdf y rtf (para Word).

Las presentes páginas las he creado para documentar mis progresos: cómo crear desde cero un sistema de procesado de documentos y también cómo conseguir el objetivo propuesto de obtener varios formatos. Además lo quiero en Windows y Linux y que me soporte Unicode (porque soportaré documentos en varios idiomas, no necesariamente Western European).

Máquina virtual java

Es preciso tener la máquina virtual java, así que recomiendo que nos hagamos una descarga de http://java.sun.com y procedamos con la instalación.

Necesitamos un procesador de XSLT

Bueno, no sé muy bien lo que es, pero necesitamos un procesador de xslt. Hay varios disponibles 1), pero yo me he decantado por xsltproc.

Me he decantado por xsltproc. Puede descargarse para windows aquí. Es preciso descargar todos los paquetes, descomprimirlos y juntar todos los archivos en uno sólo: xsltproc usa iconv (que viene en otro de los paquetes) libxml (que viene en otro de los paquetes), etc. Así que me he descargado todo:

  • iconv
  • libxmlsec
  • openssl
  • libxml2
  • libxslt
  • zlib

Para juntarlos todos, descomprimalos y el contenido de las carpetas “lib”, “bin”, “include” se ponen todos los archivos juntos.

Yo he creado un paquete xsltproc_todo.zip que ya lo contiene así. Hemos incluido la ruta al programa “xsltproc” en el path, de forma que al abrir una ventana de comandos, basta con escribir “xsltproc” para que se ejecute

c:\> xsltproc

Nos tiene que salir la ayuda del programa.

Descargando las hojas de estilo XSL de DocBook

Esto es realmente DocBook: unas hojas de estilo que nos permiten procesar un documento DocBook (que está en xml) para obtenerlo en un formato “interesante”: pdf, chm, etc.

Las hojas de estilo se descargan del sitio web de Docbook en sourceforge, para el caso de xsltproc hay que descargar el fichero “docbook-xsl.1.74.0.zip” y descomprimirlo en el ordenador. Yo lo he extraido en c:\archivos de programa\docbook, con un par.

La primera prueba sencilla.

Hemos creado un libro muy sencillo:

<book lang="es">
  <bookinfo>
    <title>Mi primer documento DocBook</title>
  </bookinfo>
  <toc>
  </toc>
  <!-- Los comentarios tienen este aspecto -->
  <chapter>
    <title>Introducción</title>
    <para>La primera del documento y un párrafo.</para>
    <para>Otro párrafo de la introducción.</para>
  </chapter>
</book>

Para generar la salida en formato html:

C:\>xsltproc --output minibook.html "C:\Archivos de programa\docbook\html\docbook.xsl" minibook.xml

Para generar la salida en formato html help de microsoft:

xsltproc --output prueba.html --stringparam use.extensions 0 /usr/share/xml/docbook/stylesheet/nwalsh5/1.73.1/htmlhelp/htmlhelp.xsl libro.xml 

Obtendremos un fichero html único.

Pasos adicionales para generar un fichero rtf o pdf

Hay que instalarse una utilidad que se llama FOP.

Esta utilidad, desarrollada por apache, puede descargarse del sitio web de apache en http://xmlgraphics.apache.org/fop/.

En concreto el fichero fop-0.95-bin.zip.

Lo he descomprimido en archivos de programa y he puesto la ruta al programa “fop.bat” en el PATH.

HACEMOS UN FICHERO BAT QUE HACE LA COMPILACION DE UN DOCUMENTO EN WINDOWS

rem
rem compilar - genera el libro en varios formatos: chm, html_single, html_multi, pdf, rtf
rem
 
set document=minibook
 
set docbook=C:\Archivos de programa\docbook
 
set XML_CATALOG_FILES=%docbook%\catalog.xml
 
rem
rem HTML una sola pagina
rem
set dest_folder=html_single
rem copiamos todo el contenido de la carpeta images a la carpeta
rem de destino dest_folder
xcopy images %dest_folder%\images /e /i /y
xsltproc --output "%dest_folder%\%document%.html" "%docbook%\html\docbook.xsl" "%document%.xml"
 
 
rem
rem HTML multipágina
rem
set dest_folder=html_multi
rem copiamos todo el contenido de la carpeta images a la carpeta
rem de destino dest_folder
xcopy images %dest_folder%\images /e /i /y
xsltproc --output "%dest_folder%\%document%.html" "%docbook%\html\chunk.xsl" "%document%.xml"
 
rem
rem CHM (ayuda de microsoft)
rem
set dest_folder=chm
rem copiamos todo el contenido de la carpeta images a la carpeta
rem de destino dest_folder
xcopy images %dest_folder%\images /e /i /y
xsltproc --output "%dest_folder%\%document%" "%docbook%\htmlhelp\htmlhelp.xsl" "%document%.xml"
 
REM rem
REM rem RTF
REM rem
REM set dest_folder=rtf
REM rem copiamos todo el contenido de la carpeta images a la carpeta
REM rem de destino dest_folder
REM xcopy images %dest_folder%\images /e /i /y
REM xsltproc --output "%dest_folder%\%document%.fo" "%docbook%\fo\docbook.xsl" "%document%.xml"
REM fop "%dest_folder%\%document%.fo" -rtf "%dest_folder%\%document%.rtf"
 
 
rem
rem PDF
rem
set dest_folder=pdf
rem copiamos todo el contenido de la carpeta images a la carpeta
rem de destino dest_folder
xcopy images %dest_folder%\images /e /i /y
xsltproc --output "%dest_folder%\%document%.fo" "%docbook%\fo\docbook.xsl" "%document%.xml"
fop "%dest_folder%\%document%.fo" -pdf "%dest_folder%\%document%.pdf"

Otros ficheros que me he descargado

xmlNotepad: bloc de notas xml de Microsoft. Puede descargarse del sitio web de descargas de microsoft http://downloads.microsoft.com

Microsoft HTML Help Compiler: compilador de ayudas de microsoft, para generar los archivos de ayuda de microsoft (*.chm).

Manual de referencia de docbook: puede descargarse de esta página web http://docbook.org/tdg5/index.html.

Hay dos ficheros: uno es el fichero “tdg5-en-0.0.20.chm” que viene en formato chm, y el otro viene en formato zip: tdg5-0.0.25.zip.

docbook/index.1235163416.txt.gz · Last modified: 2022/12/02 22:02 (external edit)