Technology
The first implementation of this was used i a pure Java CMS, so we decided to use Java Advanced Imaging to do the basic image processing. It turned out that scaling images with high quality using JAI was a bit more difficut than expected, but not impossible - more on this here.