Bethan Palmer Bethan is a Java developer and a Java Champion. She has spoken at conferences including JavaOne/Code One, DevFest and NetBeans days. She has a degree in English Literature.

Replacing ImageIO with the JDeli image library

1 min read

JDeli logoWe created JDeli to be a better alternative to ImageIO and solve some of the problems we were finding with ImageIO and JAI (you can find more detail here). If you add JDeli to your classpath, ImageIO will automatically use for all supported Image formats. So no code changes are needed for existing code.

We have added read and write methods so that you can easily write new JDeli commands in your code.

JDeli.read returns a BufferedImage as the result of decoding a supplied image file, or image file bytes. It can open files with extension of jpg, jpeg, jp2, jpx, heic, dcm, png, webp, sgi, rgb, tiff, psd and bmp.

JDeli.write compresses the supplied BufferedImage into the given output format. It can write out files as BMP, PNG, JPEG, HEIC, TIFF or WEBP.

For example, if I wanted to read a PNG and then write it out as a TIFF, I could do the following:

File imageFile = new File("C:\\Users\\Bethan\\Desktop\\example-png.png");
File outputFile = new File("C:\\Users\\Bethan\\Desktop\\example-tiff.tiff");
BufferedImage image = JDeli.read(imageFile);
JDeli.write(image, JDeli.OutputFormat.TIFF, outputFile);

If you would like to watch a tutorial on how to read and write TIFF images with JDeli, check out this video.

So it is as easy to use in your code as ImageIO, and has the benefits of being a more reliable library.

Why use JDeli to read and write Images in Java?

JDeli offers a range of advantages over ImageIO and alternatives, including:

  • prevent heap related JVM crashes
  • support for additional image formats such as Heic
  • reduce output file size
  • improve read/write performance
  • create smaller files
  • control over output
  • support threading
  • superior image scaling algorithms



Bethan Palmer Bethan is a Java developer and a Java Champion. She has spoken at conferences including JavaOne/Code One, DevFest and NetBeans days. She has a degree in English Literature.

Leave a Reply

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

IDRsolutions Ltd 2020. All rights reserved.