Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Image processing server

I'm looking for a free, preferably open source, http image processing server. I.e. I would send it a request like this:

http://myimageserver/rotate?url=http%3A%2F%2Fstackoverflow.com%2FContent%2FImg%2Fstackoverflow-logo-250.png&angle=90

and it would return that image rotated. Features wanted:

  • Server-side caching
  • Several operations/effects (like scaling, watermarking, etc). The more the merrier.
  • POST support to supply the image (instead of the server GETting it).
  • Different output formats (PNG, JPEG, etc).
  • Batch operations

It would be something like this, but free and less SOAPy. Is there anything like this or am I asking too much?

like image 974
Mauricio Scheffer Avatar asked Sep 28 '08 23:09

Mauricio Scheffer


1 Answers

The ImageResizing.Net library is both a .NET library and an IIS module. It's an image server or an image library, whichever you prefer.

It's open-source, under an MIT-style license, and is supported by plugins.

It has excellent performance, and supports 3 pipelines: GDI+, Windows Imaging Components, and FreeImage. WIC is the fastest, and can do some operations in under 15ms. It supports disk caching (for up to 1 million files), and is CDN compatible (Amazon CloudFront is ideal).

It has a very human-friendly URL syntax. Ex. image.jpg?width=100&height=100&mode=crop.

It supports resizing, cropping, padding, rotation, PNG/GIF/JPG output, borders, watermarking, remote URLs, Amazon S3, MS SQL, Amazon CloudFront, batch operations, image filters, disk caching, and lots of other cool stuff, like seam carving.

It doesn't support POST delivery of images, but that's easy to do with a plugin. And don't you typically want to store images that are delivered via POST instead of just replying to the POST command with the result?

[Disclosure: I'm the author of ImageResizer]

like image 62
Lilith River Avatar answered Sep 26 '22 17:09

Lilith River