Java Image Editor

The Java Image Editor is a simple image editor built using Swing and the filter classes
found on this site. Originally written as a test harness for my image processing classes,
it's now become a fully fledged application.

Features include:

Multiple image layers

Brushes: paint, clone, erase etc.

Blending modes - add, screen, darken etc.

Transformations: scale, rotate, shear, perspective

Lots of effects and image-processing operations

Reads and writes multiple image formats

Extensible via a plugin mechanism

You can download a copy of the JAR file here. Macintosh users can use the JAR file, but it is much better to use the
Mac OS X download which contains a properly-packaged version which will behave much better on Macintosh systems (e.g.
will support drag and drop onto the Dock and application icon):

To run the Image Editor, it should be sufficient to double-click on the file
"ImageEditor.jar" on systems which support this, otherwise use the command:

java -jar ImageEditor.jar

or the equivalent for your system.

Macintosh users should double-click on the disk image and drag the application into their Applications folder, or run it
directly from the disk image if wished.

The Macintosh version uses the excellent Quaqua look and
feel. This enables me to get rid of the horrible MDI interface in the Mac. On other platforms you will have to continue to endure MDI
for the moment.

If you run the editor as an applet in your browser, you won't be able to do much with it due to security considerations.
You won't be able to open or save images. However, you can create new images and paint on them and generally
get the feel for how it works. If you wanted to deploy the editor as an applet, you'd need to provide ways of getting
images into and out of the editor, either by signing the applet or by adding commands to get and put images
over the Web connection. This can easily be done by writing plugins.

One more thing: The default Java heap size is too small to allow the editor to open large images or create many layers without
running out of memory. The only around this is to increase the available memory on the command line, for example:

java -jar ImageEditor.jar -Xmx1024m

Documentation

There is some very sparse documentation for the Image Editor.
One day there will be more, but don't hold your breath.

Plugins

The image editor has a plugin mechanism which allows extra filters, tools, menu items and
file formats to be added. At present the following are available: