iText is a library that allows you to generate PDF files on the fly.
The most recent version is iText 5.0.1.
You can DOWNLOAD IT HERE.
iText is a library that allows you to generate PDF files on the fly.
iText is an ideal library for developers looking to enhance web- and other applications with dynamic PDF document generation and/or manipulation. iText is not an end-user tool. Typically you won't use it on your Desktop as you would use Acrobat or any other PDF application. Rather, you'll build iText into your own applications so that you can automate the PDF creation and manipulation process. For instance in one or more of the following situations:
- Due to time or size, the PDF documents can't be produced manually.
- The content of the document must be calculated or based on user input.
- The content needs to be customized or personalized.
- The PDF content needs to be served in a web environment.
- Documents are to be created in "batch process" mode.
You can use iText to:
- Serve PDF to a browser
- Generate dynamic documents from XML files or databases
- Use PDF's many interactive features
- Add bookmarks, page numbers, watermarks, etc.
- Split, concatenate, and manipulate PDF pages
- Automate filling out of PDF forms
- Add digital signatures to a PDF file
- And much more...
In short: the iText classes are very useful for people who need to generate read-only, platform independent documents containing text, lists, tables and images; or who want to perform specific manipulations on existing PDF documents. The library is especially useful in combination with Java(TM) technology-based Servlets; there's also a .NET port available: iTextSharp (written in C#).
iText requires Java 5. It's available for free under the GNU Affero General Public License (see the Terms of Use).
If you want to use the iText classes you should be
acquainted with JAVA (TM) programming.
You'll also need the following Software:
- The Java Development Kit (JDK) 1.5 (or any later version) from Sun Microsystems Incorporated.
- The BouncyCastle: bcprov, bcmail, and bctsp
A good place to start learning how to use iText is the book iText in Action - 2nd Edition.
back to main page- Changes made by Paulo
- Title and Description should be a XmpArray (patch provided by Katja Sondermann)
- CJKFont: A resource was not closed.
- PdfCopy/PdfCopyFields: The bookmarks were being written twice.
- PdfReader: A fix to take care of broken PDFs that have whitespaces after "stream" before the LF.
- PdfWriter: Fonts are output in the order they are added.
- PdfGraphics2D: The patch to simulate bold broke transparency (Bill Ensley).
- PDF-A requires an EOL after obj
- Local goto doesn't throw exception for inexistent local destination.
- PdfStamper: Creates the SigFlags is there's a signature.
- Changes made by Howard
- RtfShape: Fix missing RtfDocument objects. Allows for shape objects to be added correctly.
- RTF: changed getBytes() to use DocWriter.getISOBytes(...) for proper byte output.
- Fix image processing for import. Control word shprslt is for Old version of Word and is not supported at this time. Send data to null destination.
- RTF: Preparing for import into elements.
- Fixed some tags.
- Changes made by Xavier
- javadoc cleanup: invalid @throws removed
- removed unused imports
- fixed svn keyword substitution
- Changes made by Bruno
- Code contribution by Kevin Day (see mailing list November 3, 2008): classes that already allow us to parse a PDF content stream to retrieve text; could form the foundation of more elaborate PDF parsing. Includes some classes from fontbox.org (BSD license).
- Bigfix by Mark Storer: rhints not taken into account in create method of PdfGraphics2D
- AcroFields: added a new method setListSelection
- Exceptions thrown by XmpReader are now caught (see mails Stepan Rybar November 2008 reporting a problem with PDFs generated using FOP)
- In 2.1.3, I introduced a bug that made the XMP data corrupt and caused the problem reported by Paul Ryan (on the mailing list, July 28)
- CFFFontSubset: Ulrich Telle solved a problem when subsetting a CFF font (only blanks were displayed when opening the document with Adobe Reader 8 or higher).
- TextField: V was only shown when the value wasn't empty AND a value wasn't required. I think it's sufficient to omit V when the field is empty; the extra constraint that the field may not be required is too strict.
- PdfPRow: Fixed a problem with setNoWrap(true) in combination with setRotation(180)
- Implementation of multiselect listbox support in XfdfReader asked for on the mailing list on October 28, 2008
- Fixed a Copy/Paste error mentioned on the mailing list on September 1 2008 by Jean-Christophe Dorchies.
- Bug reported and fixed in the SF bugtracker (#2094155; Carl Freeland): g2.currentFillGState = this.currentFillGState; was missing in PdfGraphics2D.create()
- Fixed a bug reported in the SF bugtracker (#2124088): Broken auto numbering when using a ChapterAutoNumber as LargeElement.
- Fixed a bug reported in the SF bugtracker (#2186356): When a paragraph that contains a PDFPTable gets added to another paragraph, an IndexOutOfBoundsException gets thrown.
- New method addSignature, based on a suggestion by Michael Klink (see mailing list October 29, 2008)
