После создания с использованием FOP, как разновидности постобработки, я бы посоветовал взглянуть на PDF toolkit . Своими словами:
Если PDF - это электронная бумага, то pdftk - это электронное устройство для удаления скоб, дырокол, переплет, секретное кольцо декодера и рентгеновские очки. Pdftk - это простой инструмент для повседневных дел с PDF-документами.
Я использовал это в некоторых проектах, где мне нужно было повторно отсортировать вывод FOP в порядке печати страниц.
К сожалению, это не Java и не PHP, но это полезно во многих отношениях, и я думаю, что, тем не менее, стоит упомянуть. И это небольшой автономный, который вы, возможно, можете просто установить в пути вашего сервера ...