Apache Commons logo Commons Imaging™ logo

Commons Imaging: a Pure-Java Image Library

Apache Commons Imaging, previously known as Apache Commons Sanselan, is a library that reads and writes a variety of image formats, including fast parsing of image info (size, color space, ICC profile, etc.) and metadata.

This library is pure Java. Compared to typical image I/O libraries in native code, it's more portable, and should be more reliable and more secure against corrupt/malicious images, yet still performs reasonably well. It's easier to use than ImageIO/JAI/java.awt.Toolkit (Sun/Java's image support), supports more formats (and supports them more correctly). It also provides easy access to metadata.

Imaging was working and was used by a number of projects in production even before reaching its initial release as an Apache Commons component.

This project is Open Source; free as in freedom and free as in beer. It is available under the ASF (Apache) License. This is a non-viral Open Source license.


A getting started guide is available together with various project reports.

The Javadoc API documents are available online:

The source repository can be browsed, or you can browse/contribute via GitHub.

Release Information

Help Needed!

If you want to help out you may: Make sure to read through our guide lines for contributing patches before you start coding. This will stream line the process of getting your contributions into the code.

For information on previous releases see the Release History, and to download previous releases see the Commons Sanselan Archive.


The commons mailing lists act as the main support forum. The user list is suitable for most library usage queries. The dev list is intended for the development discussion. Please remember that the lists are shared between all commons components, so prefix your email by [imaging].

Bug reports and enhancements are also welcomed via the JIRA issue tracker. Please read the instructions carefully.