Я бы порекомендовал не пытаться выводить PDF напрямую из XSLT, а преобразовать его в промежуточное представление и инструмент, который может сделать макет текста за вас. XSL-FO может быть хорошим выбором, поскольку преобразование в него должно быть простым.
Для этого взгляните на Apache FOP:
http://xmlgraphics.apache.org/fop/dev/index.html
и вот учебник, который даст вам представление о том, что вы можете сделать с помощью FOP:
http://onjava.com/pub/a/onjava/2002/10/16/fop.html
Надеюсь, это поможет!