Apache FOP formats and renders XSL-FO input into a variety of output formats, including PDF and PostScript.
To more information, including general documentation, go to the Apache FOP Home Page.