JPedal may require some additional jars on your classpath to handle some PDF files. As these can increase the size of download substantially but are needed on only a small number of PDF files, we do not include them all.
If they are required, JPedal will generate an error or tell you.
You can either add the jars into the ext directory of Java or add them to the classpath using the -cp option (in which case you can not use the -jar option and will need to specify the class you are running).
Getting hold of the Jars
The PDF Viewer actually has a configuration option to download any jars required to run JPedal. It will detect which jars are present on your machine and open the downloads page. This is the recommended way to obtain the jars.
CIDFont0/CIDFont2 Foreign language support (cid.jar)
There are additional CMAP files which can be downloaded as part of the PDF file specification.
This is required by some foreign fonts and available from the downloads page. An exception will be thrown if it is needed and not present.
The Java Advanced Imaging library adds better Tiff support and hardware acceleration to some image operations. It can be enabled using a JVM option but will not be automatically used if on classpath. The JAI libraries may come as a single jar which needs to be unpacked into jai_core and jai_codec. We have included a flag to enable it because some customers want to have JAI on the classpath but avoid its usage in JPedal for technical reasons.
Java Advanced Imaging (JAI) can be used to enhance image handling, especially for Tiffs. These files need jai_core.jar
Files with JPEG2000 encoded images will also need imageio.jar, which is part of JAI
We found a problem in imageio.jar and built our modified version.
JAI jar files can be downloaded from here
To run JAI you need the jars on the classpath and the JVM flag -Dorg.jpedal.jai=true set.
If the file is encrypted, the JCE library from The Legion Of The Bouncy Castle (http://www.bouncycastle.org).
mailbc.jar is also required along with the main jar to compile or open a PDF with a certificate.
IText is a great free library for creating and editing PDF files so very much complements JPedal. We are big fans of Itext and have added some hooks to access IText functions in JPedal.
JPedal contains a dummy class called ItextFunctions. If you are building JPedal from source and you would like to use iText you can replace the ITextFunctions dummy class with the version here which will enable the iText functionality in the viewer.
Important note IText is uder an AGPL license so if you do not distribute the source code, you will need a license from Itext if you wish to use it.
The PDF Viewers make use of the freetts speech synthesis libraries to allow selected text to be read back. The required libraries can be downloaded here. All files from the lib directory must be present yet only freetts.jar need be added to the classpath.