SourceForge Page
Project Files
Development Blog


v0.1.3b win32
v0.1.3b linux


API Docs
Change Log
Feature List

Welcome to the imagen project!

imagen is a simple, object-oriented imaging library designed for easy encoding/decoding of images.

It is a cross-platform, libre/open-source, C++ toolkit providing semi-advanced reading and writing capabilities for common image file formats for use in a wide range of software applications.

It was originally designed for loading images in the Gel2D Game Engine, but has since become a more general purpose imaging library.

imagen has been completely re-designed from the ground up. Not only is it more powerful and extensible, but it's actually easier to use as well.
imagen v0.1-beta is the first release containing the new design.

The library is still in its early stages, but is capable of reading and writing BMP, JPEG, PNG and TGA images.

Notable Improvements

  • Support for reading/writing JPEG images
  • Improved unit resolution support
  • Set custom read/write row callback functions
  • Implicit data sharing (copy-on-write)
  • Several major bugfixes
  • Partial support for reading/writing Windows Bitmap files
  • New command-line front-end
  • Read and write paletted PNG images
  • Several major bugfixes
  • More stabilized and consistent interface
  • New polymorphic design for data streams
  • Numerous improvements to the way images are read and written
  • Completed read/write support for colormap Targa images with 24/32-bit palettes
  • Removed accidental libpng dependency in iPNG.h header
  • Numerous improvements to PNG image reading/writing
  • Class iImage now preserves all attributes common to all image classes
View the Change Log

Key Features

Convert from/to various image file formats with minimal loss of embedded information
Various functions for accessing and manipulating image data (useful for digital image synthesis)
Simple command-line front-end makes it easy to convert and manipulate images

Complete list of features

Unfamiliar with the imagen library?

The API documentation is a good place to start if you want to get acquainted with the interface.
No "official" documentation has been written yet, but the library is simple enough to use; so you shouldn't have any trouble integrating it into any of your software projects.

For some walkthroughs on basic usage, browse the tutorials section.


The imagen library is open-source software distributed under the GNU Lesser General Public License.
Through dynamic linking, imagen can be used in proprietary as well as open-source projects.
If you are up to reading the legalese, click here.

Future Plans