We released processing 0.7 a few days ago which was an extra week in the making but it was worth it.
0.7 is packed with a huge list of changes and fixes. My first piece of PImage went in and got a few last minute bug fixes applied and now I am working towards 0.8 content.
Last night I pushed up the resize prototype for PImage objects for peer-review. A few interesting things came out of that. One being I almost missed the part in the specification about allowing 0 to be passed in for the width or height and interpret that as a sign to keep the images current aspect ratio and just adjust to the specified width or height on the other parameter.
I also ran the tests on a few of my changes and noticed we had to add a few more properties to the fake-dom.js file for the parser tests which was causing 60 of the tests to start failing.
As I’ve been putting PImage together and running some performance tests I’ve realized at some point we will have to abandon the JS pixel array that’s holding pixel data and move to using an ImageData object attached to the PImage. This will make moving from a PImage object into a ImageData or canvas object for canvas functions a lot faster in the future. Currently if you are displaying an image in a loop and changing it the performance is not very good. Adding accessors, changing the object composition, and moving as many functions to drawImage() instead of putImageData() are things we plan to do to speed it up in the future. Initial tests show storing the imagedata in a ImageData object to be about 10x faster alone.
More about 0.8 changes in a few days.