Release Notes for Apache FOP 0.95
Besides the important changes listed below, the most important areas with improvements in this release are:
Many bugfixes in tables, plus some new features (full support for keeps and breaks, border conditionality, background on columns and header/footer/body)
Improvements and bugfixes for font handling and font auto-detection/-registration.
Performance improvements and memory optimizations for the property handling in the FO tree.
Please note that with this release, we've dropped support for Java 1.3. FOP will, from now on, require at least Java 1.4.
There have been a few changes in tables that make FOP both more strict and more compliant to the Recommendation:
- XSL-FO 1.1 explicitly states that a row-spanning fo:table-cell element is not allowed to span further than its enclosing fo:table-header/footer/body element (see bottom of section 6.7.3). From now on FOP will give a validation error if a document contains such an erroneous cell.
- If an fo:table element contains explicit fo:table-column children, then those elements set the total number of columns in the table. This means that a validation error will now occur if a row contains more cells than available columns. This change allows to improve performance, since the rendering of the table may start as soon as the table-column elements have been parsed.
If more flexibility is needed, then the fo:table-column elements may be just omitted. The final number of columns will then be set by the row that has the most cells.
The image libraries Jimi and JAI are no longer needed (and used) for image loading. Instead we rely completely on the Image I/O API that has been introduced with Java 1.4. If you still need support for bitmap image formats that do not work out-of-the-box, we recommend adding JAI Image I/O Tools (an Image I/O compatible image codec package) to the classpath. JAI is still required for building the FOP distribution but it is optional for normal builds and at run-time.
This final 0.95 release also includes all of the changes made for Apache FOP 0.95beta.
Major Changes in Version 0.95
This is not a complete list of changes, just some of the more important ones. A full list of changes in this release is available.
Changes to the Code Base
- Fixed potential multi-threading problem concerning the use of DecimalFormat. Committed by JM. See issue XGC-13.
Changes to the Layout Engine
- Various bugfixes for table layout. Committed by VH. See issue FOP-1509.
Changes to Renderers (Output Formats)
Fixed positioning of absolutely positioned block-containers in multi-column documents. Committed by JM.
Fixed rendering of fixed block-containers in AFP output. Committed by JM.