Mark Stephens Mark has been working with Java and PDF since 1999 and is a big NetBeans fan. He enjoys speaking at conferences. He has an MA in Medieval History and a passion for reading.

Are you a Java Developer working with Image files?

Read and write images in Java with JDeli

How to write HEIC image files in Java with JDeli

37 sec read

heic file icon

In this article, I will cover how to write out images as Heic files in Java. We also have a related article covering how to read HEIC files in Java.

ImageIO does not write HEIC file types so you will need to use an external library. We believe that JDeli is the only pure, complete Java implementation available so we will document that. If you are looking for a free solution, we recommend the Nokia library on GitHub (which includes Java wrappers).

How to write an image as a Heic file with JDeli

  1. Add JDeli to your class or module path. (download the trial jar).
  2. Create a File (or OutputStream) object
    File file = new File("/path/to/outputFile.heic"));
  3. Pass image, Heic type, and File (or OutputStream) object into write method
    JDeli.write(bufferedImage, "heic", file);

In JDeli you can also use a typesafe version

JDeli.write(bufferedImage, OutputFormat.HEIC, file);

or pass in a object for more control over Heic image output, such as level of Compression.

HeicEncoderOptions options = new HeicEncoderOptions();
JDeli.write(bufferedImage, options, file);


Find out how to read and write images files in Java with JDeli:

Read: BufferedImage image = JDeli.read(streamOrFile);

Write: JDeli.write(myBufferedImage, OutputFormat.HEIC, outputStreamOrFile)

Learn more >>

Mark Stephens Mark has been working with Java and PDF since 1999 and is a big NetBeans fan. He enjoys speaking at conferences. He has an MA in Medieval History and a passion for reading.