iText is a library that allows you to generate and manipulate 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.
iText is available for free under a multiple license: MPL and LGPL. Please read the copyright pages for more information on the copyright of iText and the licenses involved.
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.4 (or any later version) from Sun Microsystems Incorporated.
- The BouncyCastle: bcprov and bcmail. These libraries are needed for compiling iText. At runtime you only need them when encryption or digital signing is involved.
- Adobe Reader from Adobe Systems Incorporated is recommended as PDF viewer application. There are other PDF viewers around, but some of the PDF functionality that is described in the PDF Reference (and that is supported by iText) isn't supported in those viewers.
- itext-hyph-xml.jar consists of a series of XML files borrowed from the Apache FOP project. You'll need them if you want to use the hyphenation functionality. Please check the license of the files inside this jar before using them.
- iTextAsian.jar should be added to your CLASSPATH if you need support for CJK fonts. These are Chinese, Japanese and Korean fonts that are not embedded and for which the end user needs to download an extra font pack to be installed with Adobe Reader. The content of iTextAsian.jar consists of font metrics files (NOT the actual font programs).
- For the sake of completeness, we also mention the iTextAsianCmaps.jar, but there's very little chance you'll ever need it (you'll know if you do; if you don't know, you can safely ignore it).
There are two .NET ports of iText: one written in C#, featured on this site: iTextSharp. Another one written in J#: iText.NET.
