Skip navigation links

JImageReader 1.2.0 API

JImageReader is a reader for various image formats, with a focus on uncommon ones.

See: Description

Package Description
Implementations of bitmaps (the concept, not the format).
Classes that represent a palette for an indexed image.
Provides image readers for various formats.
The image processors in this package are not yet ready for prime time, and should not be used.
Service Provider Interface implementations for various formats, allowing ImageIO and other libraries to use them seamlessly.
Miscellaneous utilities for assisting with image processing.

JImageReader is a reader for various image formats, with a focus on uncommon ones. It converts these into AWT BufferedImages, which can then be viewed in your favorite Java image program. For some formats, it also supports the service provider interface (SPI) that ImageIO uses, and it also supports exporting images to the BMP format, allowing conversion to a commonly supported format.


A variety of formats are supported, all natively in Java, although not all support all variants of the format. These formats are:

See the Wiki, and the JavaDocs for each format, for details of which variants of these formats are supported

Note that Sun Icon is not related to the much more common Windows Icon format, which is not supported.


The various image readers can be used directly, if the format of a file is known, such as the following:

JImageReader reader = new EggPaintReader("eggPaintImage.trp");
BufferedImage image = reader.getImage();

All of the image readers support this use style. In addition, some image readers support the ImageIO SPI, which allows an even more straightforward usage:

BufferedImage image = File("eggPaintImage.trp");

Simply including this library as a Maven or Gradle dependency is sufficient to enable this use, as the library registers itself as a service provider for image readers which support that.

Not all readers support SPI, sometimes due to the inability to reliably and unambiguously identify files, and sometimes because the JDK already supports that format natively. However, the following formats are supported:

Note that they only support variants of the images which they have support for; see format-specific documentation for which variants of those formats are supported.

Additional Documentation

In addition to this JavaDoc documentation, a wiki is available here, which describes specifics of image support (in particular, varieties of images formats) in more detail than the JavaDocs.

Skip navigation links

Copyright © 2020. All rights reserved.