If you want to convert XHTML to PDF, you need iText + XML Worker.
You can find a number of examples here: http://itextpdf.com/sandbox/xmlworker
The most simple examples looks like this:
public void createPdf(String file) throws IOException, DocumentException {
// step 1
Document document = new Document();
// step 2
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
// step 3
document.open();
// step 4
XMLWorkerHelper.getInstance().parseXHtml(writer, document,
new FileInputStream(HTML));
// step 5
document.close();
}
Note that the HTML file is passed as a FileInputStream
in this case. You want to pass a String
. This means you'll have to do something like this:
XMLWorkerHelper.getInstance().parseXHtml(writer, document,
new StringReader("<p>The <b>String</b> I want to render to PDF</p>"));
There are more complex examples in the Sandbox in case you need support for images, special fonts, and so on. For instance this example will convert XHTML to a series of iText objects instead of rendering them to a page rightaway.