[Refdb-users] rtf output from makefile fails
Status: Beta
Brought to you by:
mhoenicka
|
From: David N. <dav...@bi...> - 2004-03-05 10:14:45
|
Hi all, I've been exploring the DocBook XML --> RTF output from refdb's make (refdbxml) system. Currently, attempting to output even the simplest XML document as RTF will fail with a jfor error message similar to: .................................................................................................................................... org.xml.sax.SAXException: IOException in IBuilder: org.jfor.jfor.converter.ValueConversionException: conversion factor not found for 'in - -4pc' units .................................................................................................................................... Anyone playing with XML -> FO -> print formats may have encountered our old friend: 'in - -4pc'. For example, the default XML -> PDF pathway via xsltproc and passivetex gives output with '- -4pc - -4pc' in the top left of every page. A little googling turns up the following newsgroup posting from (XSL guru) Bob Stayton <http://sources.redhat.com/ml/docbook-apps/2003-q3/msg00631.html> where he explains the cause of the problem. In short, when converting DocBook to FO, XSLT processors commonly put in a margin instruction like this: margin-left="1in - -4pc" The '-4pc' is a negative expression. According to Stayton it is legal, but it is obviously not handled very well by some FO processors, including passivetex. The only two FO -> RTF processors I've tried -- jfor and XMLmind's fo2rtf -- both choke on these margin expressions. Until a sufficiently robust FO --> RTF processor comes along, I fear that RTF output from DocBook XML will not be possible. Regards, David. P.S. I see that the jfor project is being folded into Apache's FOP. The plan is to lose jfor's frontend converter (which is causing the problems) in favour of FOP's frontend parsing and interpretation engines. The remains of jfor will form an additional FOP backend for RTF generation. Maybe when that happens we can plug it into refdb for RTF output. |