Mark Stephens

Mark Stephens has been working with Java and PDF since 1999 and has diversified into HTML5, SVG and JavaFX.

He also enjoys speaking at conferences and has been a Speaker at user groups, Business of Software, Seybold and JavaOne conferences. He has a very dry sense of humor and an MA in Medieval History for which he has not yet found a practical use.

3 reasons to still use Java JAI library

36 sec read

Java Advanced Imaging is an optional library produced by Sun to offer additional ‘advanced’ support for building image handling tools in Java. In particular it offers  3 key features:-

1. Improved Performance. As well as having hardware acceleration it was optimised to only perform operations when they were needed.

2. Better memory usage. JAI offers additional Image types to BufferedImage and the tiled image is able to avoid loading all the image data into memory. If you are dealing with huge images this is a bit advantage.

3. Improved Tiff support. The support for TIFF images is much better in JAI than in ImageIO. Annoyingly the both have their own strengths (the Tiff format is like the PDF not strictly adhered to so you meet loads of ‘odd’ files). It can also create Tiffs containing multiple images.

It looks like JAI is no longer being developed but it does still offer these advantages. We use it in our PDF library to improve support for TIFF files. What do you use it for?

Mark Stephens

Mark Stephens has been working with Java and PDF since 1999 and has diversified into HTML5, SVG and JavaFX.

He also enjoys speaking at conferences and has been a Speaker at user groups, Business of Software, Seybold and JavaOne conferences. He has a very dry sense of humor and an MA in Medieval History for which he has not yet found a practical use.

2 Replies to “3 reasons to still use Java JAI library”

  1. We have given up on JAI. Not only are we concerned about the lack of development, but we have shifted to 64-bit Windows and 64-bit Java 1.6. Unfortunately, JAI’s jndi and dll’s are all 32-bit, and with Java 1.6 you can not use 32-bit jndi with a 64-bit Java.

Leave a Reply

Your email address will not be published. Required fields are marked *