In the original design for iText, it was possible to create a high-level Document object, and then have different DocListener objects listening to that Document object. This was achieved by using different writers: a PdfWriter, an HTMLWriter, and an RtfWriter. When using a PdfWriter, a PdfDocument...