If you're planning to upgrade to the latest FOP version there are a few very important things to consider:
The new code is much more strict about the interpretation of the XSL-FO 1.1 specification. Things that worked fine in version 0.20.5 might start to produce warnings or even errors now. FOP 0.20.5 contains many bugs which have been corrected in the new code.
fo:table-cell
elements, the new code
will complain about that (unless relaxed validation is enabled) because the specification
demands at least one block-level element ((%block;)+
, see
XSL-FO 1.1, 6.7.10)
inside an fo:table-cell
element.
When you use your existing FO files or XML/XSL files which work fine with FOP version 0.20.5 against this FOP version some things may not work as expected. The following list will hopefully help you to identify and correct those problems.
<fo:table-cell></fo:table-cell>
are not allowed by the specification. The same applies to empty static-content
and block-container
elements, for example.
external-graphic
)
or instream-foreign-object
objects. If images or SVGs are sized differently in your outputs with the new FOP version
check Bug 37136
as it contains some hints on what to do. The file
"examples/fo/basic/images.fo"
has
a number of good examples that show the new, more correct behaviour.
fox:outline
extension is not implemented in this version anymore.
It has been superseded by the new bookmark elements from XSL-FO 1.1.