GIMP 2.6 is an important release from a development point of view. It features changes to the user interface addressing some often received complaints, and a tentative integration of GEGL, the graph based image processing library that will eventually bring high bit-depth and non-destructive editing to GIMP.
User Interface
The toolbox menubar has been removed and merged with the image window menubar. To be able to do this a window called the empty image window has been introduced. It hosts the menubar and keeps the application instance alive when no images are opened. It also acts as a drag and drop target. When opening the first image the empty image window is transformed into a normal image window, and when closing the last image, that window becomes the empty image window.
With the empty image window acting as a natural main window, the Toolbox and Docks windows are now utility windows rather than main windows. This enables window managers to do a much better job of managing the GIMP windows, including omitting the Toolbox and Docks from the taskbar and ensuring that the Toolbox and Docks always are above image windows.
The Navigation dialog now allows panning beyond the image border; so it is no longer a problem to use a brush on the edge of an image that fills the entire display window. Also, if a utility window covers the image, you can pan the image to view or edit the portion covered by the utility window.
Renamed Dialogs menu to Windows.
Keep a list of recently closed Docks and allow reopening them.
Make opening images in already running GIMP instances work better on Windows.
You can now enter the image zoom ratio directly in the status bar.
Added support for using online help instead of a locally installed GIMP Help package.
Make it possible to lock tabs in docks to prevent accidental moving.
Tools, Filters and Plug-ins
The freehand select tool has been enhanced to support polygonal selections. It also allows mixing free hand segments with polygonal segments, editing of existing segments, applying angle-constraints to segments, and of course the normal selection tool operations like add and subtract. Altogether this ends up making the Free Select Tool a very versatile, powerful and easy-to-use selection tool.
Brush dynamics uses an input dynamic such as pressure, velocity, or random, to modify brush parameters such as opacity, hardness, size, or color; every brush supports size and opacity, most support more. Velocity and random are usable with a mouse. The Ink tool, that supported velocity, has been overhauled to better handle velocity-dependent painting.
Brush dynamics have enabled a new feature in stroking paths. There is now a check box under the “paint tool” option, for emulating brush dynamics if you stroke using a paint tool. What this means is that when your stroke is painted, GIMP tells the brush that the pressure and velocity are varying along the length of the stroke. Pressure starts with no pressure, ramps up to full pressure, and then ramps down again to no pressure. Velocity starts from zero and ramps up to full speed by the end of the stroke.
Added a bounding box for the Text Tool that supports automatic wrapping of text within that bounding box.
Move handles for rectangle based tools like Crop and Rectangle Select to the outside of the rectangle when the rectangle is narrow.
Added motion constraints to the Move Tool.
Improved event smoothing for paint tools.
Mark the center of rectangles while they are moved, and snap the center to grid and rulers.
Enable brush scaling for the Smudge tool.
Added ability to save presets in all color tools for color adjustments you use frequently.
Allow to transfer settings from Brightness-Contrast to Levels, and from Levels to Curves.
Allow changing opacity on transform tool previews.
The Screenshot plug-in has been given the ability to capture the mouse cursor (using Xfixes).
Display aspect ratio of the Crop and Rectangle Select Tool rectangles in the status bar.
Desaturate has been given an on-canvas preview.
The Flame plug-in has been extended with 22 new variations.
Data file folders like brush folders are searched recursively for files.
Replaced the PSD import plug-in with a rewritten version that does what the old version did plus some other things, for example reading of ICC color profiles.
Several displays use Cairo library.
Under the Hood
Important progress towards high bit-depth and non-destructive editing in GIMP has been made. Most color operations in GIMP are now ported to the powerful graph based image processing framework GEGL [GEGL], meaning that the internal processing is done in 32bit floating point linear light RGBA. By default the legacy 8bit code paths are still used, but a curious user can turn on the use of GEGL for the color operations with Colors / Use GEGL.
In addition to porting color operations to GEGL, an experimental GEGL Operation tool has been added, found in the Tools menu. It enables applying GEGL operations to an image and it gives on-canvas previews of the results. The screenshot below shows this for a Gaussian Blur.
Ported many widgets to use the 2D graphics library cairo [CAIRO] for drawing. See this comparison for an example of how much better this looks.
Miscellaneous
There are new things for a plug-in developer to enjoy as well. For example, procedures can now give a detailed error description in case of an error, and the error can be propagated to the user.
GIMP 2.6 also further enhances its scripting abilities. In particular there is now a much richer API for the creation and manipulation of text layers. Here is a list of new symbols in GIMP 2.6: [GIMP-NEWSYM26].
Some old scripts could not be used with GIMP-2.4. This has been improved and 2.6 should run 2.0 and 2.2 scripts.
The Utility window hint is currently only known to work well in the Linux GNOME desktop environment and on Windows starting with GIMP 2.6.1.
Using the Text Tool is currently not an optimal experience. Making it work better is a goal for GIMP 2.8.
If you build GIMP yourself and don't have GVfs support on your platform you need to explicitly pass --without-gvfs
to configure, otherwise opening remote files will not work properly.