Version 2.6 released!
- Fixed bug where a NullReference exception would occur if the Authentication module didn't process the request. All requests appear anonymous now in that situation.
- Fixed rounding bug and added regression test. New behavior is to round ALL values before performing drawing, but AFTER math is done. Was previously trimming a line of pixels off certain images.
- Fixed border bug where border was drawn over top of padding.
- Fixed threading bug with creating the web.config file. Two concurrent requests immediately after installation would cause 1 and only 1 exception.
- Fixed bug where no URL Authorization was occuring UNLESS DisableImageURLAuthorization=TRUE in web.config (This bug did not exist in v2.1b, only in custom versions sent to customers between Mar. 19 and Nov. 11)
- Fixed SecurityException errors occuring on GoDaddy and in other low-trust environments: changed the Animation plugin to use static methods insead of reflection. Users of the animation plugin, contact me for an updated version.
- Added support for splitting the image cache into subfolders, allowing scalability to millions of images: Just set "ImageCacheSubfolders" to the required number of folders.
- Added static event hooks for URL rewriting on images (replaces CustomFolders.cs, although CustomFolders.cs still works). CustomFolders.cs will be removed in the next major revision.
- Added &scale=UpscaleCanvas mode. Instead of upscaling the image, the canvas expands to the specified Width and Height.
- Added DisableImageURLAuthorization setting. Set to TRUE to disable additional URL authorization checking within the resizer (imagecache is still protected).
- Added support for resizing images served by VirtualPathProviders.
- Set either ImageResizerUseVirtualPathProvider or ImageResizerUseVirtualPathProviderAsFallback to true to enable the functionality. In Fallback mode, the virtual path provider is only called if no physical file exists.
- Added support for implementing cache-friendly database-driven image resizing using a VirtualPathProvider.
- Added IVirtualFileWithModified and IVirtualBitmapFile. Allows custom virtual path providers to be cache-friendly and even send bitmaps directly to the image resizer. Great for implementing new image formats.
- Added BuildImage overloads with VirtualFile support
- Added the ability to specify custom extension/ImageFormat mappings, in case your jpegs are named .cow or .pig for some strange reason.
- Added TranslatePoint methods to allow simulation of a resize (useful for image map generation).
- Added Size GetFinalSize() methods to ImageManager.cs for determining the resulting size of an image.
- Performance boost: modified DiskUtil.UpdateCachedVersionIfNeeded to use 'cachedFile' instead of 'sourceFile' as lock/sync key.
- Replace the old files with the new files from the ImageResizer folder. If you are using the .DLL, replace the DLL in the bin folder. Keep your old CustomFolders.cs and WatermarkSettings.cs files if you have modified them.
- Delete the /imagecache directory.