Project Status and History

Apache Commons Sanselan was renamed to Apache Commons Imaging on 16 April 2012.

Version 0.90 released January 31st, 2008.

  • Added some convenience functions for reading and writing GPS data.
  • These are demonstrated in the metadata sample usage classes.

Version 0.89 released January 22nd, 2008. This release was mislabeled as 0.88

  • Added EXIF insert/update/remove functionality. See WriteExifMetadataExample.java for examples.
  • Rewrote JPEG and TIFF parsing.
  • Greatly elaborated the unit test suite and test image suite.
  • In the process found and resolved many bugs.
  • Once again, I hope this is the last non-apache release. =)

Version 0.88 released November 17th, 2007.

  • Restored original package structure. (org.apache.commons.sanselan.* -> org.cmc.sanselan.*)
  • Refactored "byte sources," improving performance reading image data from InputStreams.
  • More code cleanup, mostly removing debugging code and applying naming conventions.
  • Fixed two bugs around pngs: alpha channels weren't be written properly, and alpha channel was not being preserved when reading grayscale pngs.
  • Improved javadocs.

Version 0.87 released October 6th, 2007.

  • Fixed a number of bugs.
  • Began adding javadocs, starting with the facade classes: Sanselan, and every class returned by its methods.
  • This is probably the last pre-apache release.

Version 0.86 released September 17th, 2007.

  • Fixed bug with writing grayscale pngs.
  • Fixed bug with gamma correction when reading pngs.
  • Added image read param that allows control over BufferedImage creation.
  • Removed an erroneous javadoc.
  • Minor cleanup.

Version 0.85 released September 5th, 2007.

  • Cleaned up Tiff image parser and writer.
  • Added compression parameter to tiff image writer.
  • Added an example that illustrates image writing, optional parameters, etc.

Version 0.84 released September 3rd, 2007.

  • Fixed Tiff/Exif bug wherein rational number fields with a zero divisor prevented the metadata from being read, due to a "divide by zero" error.

Version 0.83 released August 30th, 2007.

  • Fixed Tiff/Exif bug wherein Private IFD Tags were not being properly read.
  • Added better metadata sample code.

Version 0.82 released August 30th, 2007.

  • Complete refactor of the image metadata methods. See the new MetadataExample class for a simple example.
  • Converted all of the Sanselan class's methods to static.
  • Cleaned up some old code.

Version 0.81 released August 17th, 2007.

  • Made a couple of methods of ImageInfo public (getColorType() and getColorTypeDescription()).

Version 0.80 released July 25th, 2007.

  • I've begun a overhaul of the codebase in anticipation of becoming an Apache Incubator project.
  • I've changed the package names (again) to be org.apache.commons.sanselan.*.
  • I've removed the dependency on sharedlib.
  • I've removed a great deal of old cruft.
  • I've begun to apply a consistent naming convention to variables (lowerCamelCase) and constant names (ALL_CAPS).

Version 0.79 released June 21th, 2007.

  • I've fixed that pernicious bug in LZW compression. I've switched the default TIFF compression scheme back to LZW.
  • TIFF uses an unusual variation of LZW. For details, see this article. http://www.fileformat.info/mirror/egff/ch09_04.htm
  • In this case, the bug was: trailing EndOfInformation codes are sometimes omitted. That is, if a EndOfInformation code is the last code of a block, it may not appear.

Version 0.78 released June 20th, 2007.

  • LZW compression is buggy; this only effects writing TIFF. I've switched the default TIFF compression scheme to packbits which performs worse until this can be corrected.

Version 0.77 released June 16th, 2007.

  • I've open sourced the last dependency of this project, sharedlib.
  • I've also renamed almost all of the package names. Sorry about this; a simple global search and replace should be easy to do.

Version 0.76 released September 16th, 2006.

Version 0.75 released September 5th, 2006.

First released September 22nd, 2004.