Formatting Objects Processor

From Wikipedia, the free encyclopedia
Jump to: navigation, search
For other uses, see FOP (disambiguation).
Apache FOP
Original author(s) James Tauber
Developer(s) Apache Software Foundation
Stable release 1.1 / October 20, 2012; 2 years ago (2012-10-20)
Written in Java
Operating system Cross-platform
License Apache License 2.0

Formatting Objects Processor (FOP, also known as Apache FOP) is a Java application that converts XSL Formatting Objects (XSL-FO) files to PDF or other printable formats. FOP was originally developed by James Tauber who donated it to the Apache Software Foundation in 1999. It is part of the Apache XML Graphics project.

FOP is open source software, and is distributed under the Apache License 2.0.

Current Status[edit]

The latest version of Apache FOP is 1.1. This is the third stable release after a large redesign effort and implements a large subset of the XSL-FO Version 1.1 W3C Recommendation. In version 0.95, the code had undergone a substantial rewrite compared to 0.20.5 which was the previous stable version. As of release 0.91alpha, FOP became much more compliant to the XSL-FO Recommendation.

Major Limitations[edit]

Most important elements added in XSL-FO 1.1 (flow maps, table markers, indexes. etc.) are not available [1]

In addition, older XSL-FO 1.0 features are still not supported including automatic table layout, floats and more.

Input Support[edit]

Apache FOP supports embedding a number of image formats in the XSL-FO (through the <fo:external-graphic> element). These include:

Apache FOP does not implement the <fo:float> element. External graphics objects are thus limited to being drawn inline or in a block with no wrapped text.

Output Formats[edit]

Apache FOP supports the following output formats:

In progress:

See also[edit]

External links[edit]