ImageProcessor.Web is a web extension to ImageProcessor that allows the developer to perform image manipulation using a Url API of querystring parameters as instructions. The output of this process is highly optimised for the web to ensure that your websites' performance remains high.

This works by adding a configurable HttpModule to your website which intercepts local and remote image requests, processing them on-the-fly to your desired output.


For security reasons, as of ImageProcessor.Web v4.6.0, only the following essential processors are enabled by default. Any other processors will have to to be manually enabled via the configuration.

  • AutoRotate
  • BackgroundColor
  • Crop
  • Format
  • Quality
  • Resize

See the following issue on the Github repo for more information.


As of ImageProcessor.Web v4.3.0 Support for for the legacy url API has been dropped. This was done in order to allow the fixing of longstanding bugs.

For a list of the Url API methods follow the link here:


Setting Up Your Configuration

When installing ImageProcessor.Web, by default, you will find that the web.config will have been altered. This allows the libraries ImageProcessingModule to intercept local image processing requests.

ImageProcessor.Web is highly configurable. Additional configuration files can be added to the solution which allow for retrieval, processing and caching of images from multiple sources.

Details of those configuration files can be found in the configuration documentation.

As of ImageProcessor.Web v3.2.0 configuration outwith the Web.Config file is not installed automatically. Instead default configuration matching the values below is built into the system. To overwrite these settings install the nuget package:

Install-Package ImageProcessor.Web.Config

Extending ImageProcessor.Web

ImageProcessor.Web is built with extensibility in mind. You can use various provided interfaces in conjunction with the configuration to extend almost every aspect of the library from plugins to caching giving you complete control over your setup.

Details of those interfaces can be found in the extending documentation.