What is FOP?
FOP is the world's first print formatter driven by XSL formatting
objects. It is a Java application that reads a formatting object
tree conforming to the XSL-FO Version 1.0 W3C Recommendation and
then turns it into a PDF document or allows you to preview it
directly on screen.

FOP is part of Apache's XML project. The homepage of FOP is
http:/xml.apache.org/fop