It's not often I see a full and complete ASP.Net HTTP module made source available or open source, so when I saw this forum post, The best image processing HttpModule is now free and open-source!, I thought it would make a good project to check out.
Work less, do more
Resize, crop, rotate, watermark, and modify images without ever leaving your code editor or browser, with a simple API.
- Query string API (all languages)
- Managed API (.NET and COM languages)
Stop managing multiple image versions. Stop the endless photoshop-upload-test cycle, and let images become the easiest part of your job.
The most popular features are free and open-source:
- Resizing, cropping, rotating, flipping
- Borders, drop-shadows, padding, background colors
- Adjustable Jpeg compression. Multi-page tiff viewing.
- Animated GIF frame selection. Comprehensive, real-time diagnostics.
- Basic GIF and PNG encoding
And — no time limits on plugin trials!
One of the first things I look at on open source projects is the license. ImageResizer's is about as open and friendly as can be. Here's a snip;
The ImageResizer Core project (the /Core/ folder and its subdirectories) are licensed under the Resize Freedom license.
This includes all plugins in the ImageResizer.Plugins.Basic namespace. (NoCache,DefaultEncoder,ClientCache,Caption,DropShadow,SizeLimiting, etc.)
Visit http://imageresizingin.net/licenses/freedom for the latest version of the license.
#Image Resizer Freedom license
No restrictions, except you can't use my own code to compete with my own products.
* Sub-licensing (but the original license must be included with the source and binaries)
* Hosting providers may install as a shared library (in the GAC) on their servers.
An exact copy of the [MIT license](http://www.opensource.org/licenses/mit-license.php), but with one extra condition (in bold).
Here's a snap of the V3 Alpha 2 Visual Studio Solution
Running the solution gives you...
Then you an start playing around with it, via its query string API
Nathanael has a the command reference here and here's a snip of all you can do.
BTW, the web project has a binary reference to the ImageResizer DLL. Which means if you put a break point in the code and run it, you'll never hit it (funny that). Easy enough to fix, just change the binary reference to a project reference and you'll be break pointing away just fine...
If you're doing any server side image manipulation, would like to see how a HTTP module works, or are interested in image store locations beyond the file system (like Amazon's S3, SQL Server, etc) then ImageResizer's code is calling your name...