With a little bit of work, you can use wkhtmltopdf and an Xvfb daemon to render HTML to PDF on a headless server.