That's all the file IO and display things, but here are some more notes:

Setting 'width' and 'height' after they were first set or after a `load(file)` call will crop the image to the new width and height. You can also crop an area using the function 'crop(x, y, width, height)'.

If you want to use this code to generate a java.awt.BufferedImage, simply instantiate a class that extends Canvas and then access the 'imageBuffer' field on it. val image = ((new MyCanvas).imageBuffer)

Actually getting this code working

You will need 3 things in order to actually start manipulating images programmatically.

The Scala Compiler An IDE that supports Scala My library

(SBT support coming soon)

Once you have the above required programs and library, it is time to actually run some code. Fortunately, I've made it incredibly easy to do so!

The Canvas class contains all the functions that you've been reading about, so we simply need to do one extension and we're good. The complete code for the previous example is just this: