FOray Users
Module Users

FOray: Release Notes, Release 0.3

Release 0.3 Changes of Interest to Users

FOray 0.3 is primarily for developers and module users. Although many parts of FOray work well, and are usable as modules, the application as a whole has some general problems that require attention.

Here are the more significant of the known issues:

  • Footnotes are not laid out in the document.
  • There are many general layout problems.

Other changes:

  • FOray is now dependent on Java 5.0 or higher. Previous releases were depending on Java 1.4 or higher.
  • FOray no longer requires JAI libraries to be installed for PNG and TIFF support. These services are now provided natively through open-source libraries packaged with FOray.
  • Tables now work much better (not perfectly).
  • Lists now work much better (not perfectly).
  • Added support for the axsl:metadata extension. See aXSL Extensions.
  • Added parsing and validation support for the objects and properties added in XSL-FO 1.1. These are not necessarily used by other FOray modules, but their existence should not cause processing errors. (The bookmark-related objects are fully supported).
  • Significant improvements to expressions in property values.
  • FOray now has limited support for embedding EPS (encapsulated PostScript) files in PDF output. See EPS Graphics for more details.
  • Support has been discontinued for the "continued-label" object in the "foray" namespace. This general capability has been replaced by new features in XSL-FO 1.1, which will be implemented in FOray as user needs are expressed and as developer resources are available.

Release 0.3 Changes of Interest to Developers

  • All changes that are part of the aXSL 0.2 release were made to FOray 0.3.
  • The class org.foray.common.StringUtilPre5 has been removed, and uses of its methods have been replaced by standard Java 5.0 String and Character methods.
  • Completion of javadoc API documentation for the FOrayGraphic, FOrayHyphen-R, FOrayFOTree, FOrayOutput, FOrayLayout, FOrayText, FOrayMIF, FOrayPDF, FOrayArea, FOrayRender, FOrayApp, and FOrayCore modules. All FOray modules now have comprehensive javadocs.
  • The FOrayGraphicServer constructor no longer requires the name of the parser class as a parameter.
  • JUnit tests have been introduced in most modules. Our testing is far from comprehensive, but some good infrastructure is now in place which is already assisting in maintaining stability.
  • Hyphenation pattern files are now named using the 3-character ISO-639 language codes instead of the 2-character codes previously used. This change is transparent to the user (they can still use either the 2- or 3-character code in input). This change was made to accommodate languages for which no 2-character code was assigned.
  • FOTree properties have been overhauled a bit. Each property now has its own class, with abstract superclasses where appropriate. This makes storage of the property type redundant, and it has been removed, which should reduce the memory footprint. Also the PropertyList no longer keeps a reference to the parent FObj.
  • The Apache Commons Logging dependency has been upgraded to version 1.1.
  • The Batik libraries (for SVG processing) have been upgraded to 1.6.
  • Batik dependencies have been eliminated from the Common, FOTree, AreaTree, Pioneer Layout, PDF and Renderer modules. All Batik dependencies are now confined to the Graphic package, and are thus effectively hidden behind the aXSL Graphic interfaces. This makes it much more feasible for users to drop in another (perhaps commercial) SVG package. It also makes maintenance of the Batik integration much more straightforward.
  • The Apache XML Graphics Commons dependency has been upgraded to version 1.2.