Over a million developers have joined DZone.

iText 2.0.8: Last Stop Before 2.1

DZone 's Guide to

iText 2.0.8: Last Stop Before 2.1

· ·
Free Resource

Whenever people think of PDF and Java, they think of iText. That's great, but it also involves a lot of responsibility: we have to keep on working on the product; fixing bugs, adding new functionality, making it a better product.

The first thing that jumps in the eye with this new release, is the reorganization of the source code. Whereas in the past all the source code was in one com.lowagie.* tree right under 'src', we now have subdirectories such as 'core', 'rtf' and 'rups'. There's also a 'test' directory with different subdirectories containing series of code samples for testing with JUnit.

Most of these changes are made with the next release in mind. The old RtfWriter will soon disappear, and some new RTF code for manipulating RTF will be added in the new rtf directory: this code will go into a separate jar.

The rups directory contains some code for a new tool that is available in pre-beta as a Java WebStart application. It uses SUN's PDF Renderer to view a PDF document, but adds iText functionality to look beyond the surface: you can easily browse through the syntax that makes your PDF document tick. You can download the jars necessary to run RUPS for testing purposes, but at the moment there's no project page for RUPS yet.

Aside from these changes, Paulo made TIFF support more tolerant for broken TIFFs, fixed a bug in PdfSmartCopy, added some new PdfGraphics2D functionality, and much more. Xavier managed the code reorganization and applied the necessary changes to the ANT scripts. Mark did the same for the RTF part and fix a bug concerning styles. I wrote the RUPS code and I introduced some new concepts.

This is the last 2.0.x release, the next release will be iText 2.1.0.


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}