iText es una librería libre (distribuida bajo licencia MPL y LGPL) para Java que permite crear archivos PDF dinámicamente ("al vuelo").

Con iText se pueden generar documentos, manipular documentos ya creados, agregar índices, números de páginas y marcas de agua, etc.

A continuación, veremos un ejemplo muy elemental de los proporcionados en el sitio oficial:


package pdf;

import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfWriter;

public class Test {

    public static void main(String[] args) {
        Document documento = new Document();
        try {
            PdfWriter.getInstance(documento, new FileOutputStream("LuAuF.pdf"));
            documento.open();
            documento.add(new Paragraph("http://luauf.com/"));
        } catch (DocumentException de) {
            System.err.println(de.getMessage());
        } catch (IOException ioe) {
            System.err.println(ioe.getMessage());
        }
        documento.close();
    }
}

iText requiere el Java Development Kit (JDK) 1.4 o superior.

Vía: Seraphinux