Docbook XML to PDF convertion

Tommy Reynolds Tommy.Reynolds at MegaCoder.com
Wed Jan 25 05:20:23 UTC 2006


Uttered Hugo Cisneiros <hugo at devin.com.br>, spake thus:

> I was indicated to this list, so here I am :)

Welcome!
 
> Since I'll release the book freely, I will need a PDF version for 
> distribuition, since many people will like to print it. The 
> Documentation Guide says that PDF generation is somewhat broken :(

Yes, PDF production is broken in at least two ways.

The first is the easier to correct.  The stylesheets used for the PDF
generation need much care and feeding.  Largely been ignored because
of item #2:

The passivetex back-end we use for PDF generation is obsolete and
simply not up to the task for anything much more than some small
documents.  Passivetex isn't maintained anymore, so there is bit rot
as well.

Using Apache FOP for PDF rendering is currently our best bet, but it
needs some non-free components, such as graphics rendering, so FOP in
its current state isn't an option for FDP.  The situation may change but
that's how it is now.

That being said, the stable FOP version 0.20-5 does a decent job as
does the last CVS version I checked, 0.90alpha1 IIRC.  You could
download either of those from the FOP site and give them a try.  I've
had FOP 0.20-5 break (abort, crash, dump, announce bogus errors) on
large documents such as yours: it's rather unpredictable whether it
will or won't -- you'll just have to try it.

Interfacing FOP into the FDP build system is easy.  I've updated the
XMLTO package to use FOP instead of passivetex.  Those patches have
not been accepted upstream, largely because FOP isn't in the Fedora
distribution: look to jpackage.org for that.  If you want to try
installing FOP yourself and working with a non-standard setup go
ahead.  I have my own patched XMLTO packages on my
ftp://ftp.megacoder.com/pub site.

It isn't a clean solution yet, but if you are willing to invest the
time, you could then play with correcting the stylesheet rendering if
you are interested.
 
> Some tips? Advices? Tutorials on changing and customizing the xsl 
> stylesheets? :)

Customizing the XSL stylesheets can be deep magic. If you have a
basic understanding of XSL, then I'd suggest modification by
experimentation.  Just turn the knob and see what it adjusts.

Keep your customizations to the file "docs-common/xsl/main-pdf.xsl",
or to a file directly imported from there.  The deeper an file is
nested, the less precedence it has and in the event of conflicting
settings the one with the greater precedence wins.
 
Still game?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.fedoraproject.org/pipermail/docs/attachments/20060124/70a86e78/attachment.bin 


More information about the docs mailing list