LazPaint (Version: 4.8) is open source and is a good and very capable alternative to any full featured image or graphics editors. Some of its features are listed below using its menu as a reference and the images attached to this review highlight a few of them.
LazPaint can do multiple undo and redos and paste as and paste as new image. Selections are available as rectangle, ellipse and polygon, these are complemented with curve that can create complex shapes or areas based on initial and end points. Selections can be edited, rotated and there is also the magic wand to automatically select objects within an image. Change canvas size and flip are available too as is zoom which includes a ‘Smart zoom’.
Colorize and shift colors work really well and change an image smartly. Intensity, lightness, normalize, negative, linear negative and grayscale are equal or superior to other similar programs. Pen, color picker, eraser, gradient, fill, shaded shape (many available shapes with adjustable light sources), text, deformation (image is divided into any number of grids and then any section of the grid can be dragged to distort portion(s) of an image) and texture mapping take LazPaint into more advanced territory.
Filter are mostly the common ones with different blurs (radial, motion, disk, fast, precise), sharpen, smooth, pixelate, cleartype, contour and emboss all there plus plane. The latter comes with a warning that it is a slow process (see last image for what the first image image is transformed into using plane). Finally render adds any one of various objects over a selection or the whole image.
LazPaint is multi-platform written in Lazarus, has command line support and so can take advantage of the BGRABitmap library, read more at http://wiki.lazarus.freepascal.org/LazPaint and http://wiki.freepascal.org/BGRABitmap. Input file formats supported are bmp, jpg, png, gif, ico and Paint.NET’s pdn and it can save to bmp, png and jpg.
Image in the screen shots is at http://www.flickr.com/photos/puksdesign/5896307147/in/photostream