Image Processing for Everybody!

Happy ImageProcessing Day!

Today marks the new release of my open source project ImageProcessor. I'm very proud of it.

Inspired by the frantic codings of the brilliant people I met at this years Umbraco CodeGarden retreat this release has turned into an almost complete rewrite of the library. I've dramatically simplified the code required to write plugins whilst making the library much more robust and modular adding a few very cool (I think so anyway) features.

We now have the following:


  • Automatic image file type detection
  • Automatic plugin detection
  • Ability to extend image file type support via the ISupportedImageFormat interface
  • Ability to extend individual processors via the IGraphicsProcessor interface
  • Methods to load embedded native (unmanaged) libraries from within plugins
  • True separation of concerns from the .Web extension.
  • More specific error handling feedback


  • Automatic plugin detection
  • Ability to extend individual processors via the IWebGraphicsProcessor interface
  • Improved and more consistent parsing syntax.
  • Improved processing and caching performance
  • More images are now cached (theoretically 409,600,000,000)
  • Post processing events to tap into. ImageProcessingModule.OnPostProcessing
  • Improved error handling for remote image requests
  • Url configurable EXIF preservation

There's more but it's probably best for you to read the documentation. As ever, it's a work in progress but I've tried to make them readable and precise. If you want to help at any point to improve the library, there is always a good place to start.

I'd really like to thank Scott Hanselman for sharing the library on his blog and the Umbraco team and community for their continuing support and faith in my ability. You guys absolutely rock! #h5yr's and approving nods all round!

Kirk McCoy nodding original Kirk McCoy nodding resized

comments powered by Disqus