What's New in version

Here are release highlights:

  • Basic out-of-canvas pixels viewing and editing
  • Optional editing of layers with disabled visibility
  • Foreground Select tool: new Grayscale Preview Mode
  • Newly added Normal Map filter
  • 27 old filters ported to use GEGL buffers
  • HEIF, TIFF, and PDF support improvements
  • Better loading of corrupted XCF files
  • Grayscale workflows order of magnitude faster
  • macOS Catalina compatibility
  • 45 bugfixes, 22 translation updates

Out-of-canvas viewing and editing:

  • Not being able to view and edit data outside the canvas boundary used to be a deal breaker in quite a few use cases. So this is going to be a bit of a breakthrough moment for quite a few users.

This is what has changed:

  • There is now a new Show All mode accessible via the View menu that reveals all pixels outside the canvas boundary.
  • This mode uses alpha checkerboard for canvas padding, but you can configure GIMP to temporarily or permanently use the usual padding color instead.
  • You can also enable canvas boundary cue display (dotted red line).
  • Color- and patch-picking, bucket-filling, and transforming now works outside the canvas. Which means you can crop past the canvas boundary or pick a source patch from outside the canvas area to heal an area inside the canvas.

New Image mode in transform tools:

  • This new feature is closely related to out-of-canvas viewing and editing and was also contributed by Ell.
  • Now when you e.g. rotate a single-layer image, you can use this transform type to automatically expand the canvas to include all of rotated pixels when using the default Adjust clipping mode. The switch is right next to layer/path/selection toggle at the top of any transform tool's settings.
  • It's complemented by a new Image > Transform > Arbitrary Rotation… menu entry, which activates the rotate tool in the Image mode.

Filters can now extend beyond layer boundary:

  • The result of some filters can be larger than the original layer. A very common example is Drop Shadow, which adds a shadow at an offset to the layer. Such filters are no longer clipped to the layer boundary by default. Instead, the layer is automatically resized as necessary when the filter is applied.
  • This behavior can be toggled through the new Clipping option in the filter dialog.

Invisible layers can now be edited:

  • There is now a global toggle to enable the editing of layers with disabled visibility (the eye icon in the layers docker). There was some demand for it from users, and it was easy to do, so a new contributor, woob, added this feature.

Free Select tool update:

  • The Free Select tool received further usability improvements. It now supports using Alt+drag to quickly move, cut, and copy the selection, without having to commit the selection first, similarly to the rest of the selection tools.

Foreground Select tool update:

  • Thomas Manni contributed a new Grayscale preview mode to the Foreground Select tool, which allows seeing the resulting mask in black and white. The usual preview mode is now called Color and choosing the color and opacity for the mask instead of imposing only 4 colors (red, green, blue, grey).

Feather Selection update:

  • The Feather Selection dialog has a new Selected areas continue outside the image toggle, working similarly to the corresponding option in the Shrink Selection and Border Selection dialogs. This option affects the border behavior of the operation: when toggled, selected areas along the image border are assumed to continue past the image bounds, and are therefore not affected by the feather.

New filters:

  • Thanks to Ell, GIMP is now shipping with a simple Normal Map filter (Filters > Generic) that generates normal maps from height maps. This is early initial work, a lot more is expected to be done.
  • GIMP now provides direct access to more GEGL filters
  • Bayer Matrix (for ordered dithering) and Linear Sinusoid (useful for halftoning), also both created by Ell, are in the Filters > Render > Pattern menu.
  • Newsprint (Filters > Distorts), by Oyvind Kolås, is a GEGL version of the old GIMP filter for halftoning, plus quite a few extras.
  • Mean Curvature Blur, by Thomas Manni, can be helpful to do edge-preserving blurring.
  • Also, more GEGL-based filters with on-canvas preview have replaced old GIMP counterparts: Neon (Filters > Edge-Detect), Stretch Contrast (Colors > Auto), and Oilify (Filters > Artistic).
  • Moreover, Michael Natterer did a simple 8-bit per channel port of 27 older filters to use GEGL buffers (they are still GIMP filters, not GEGL operations). Another filter, Van Gogh, got higher bit depth support (up to 32bpc float).

HEIF, TIFF, and PDF support improvements:

  • GIMP now supports ICC profiles in HEIF images at both loading and exporting time when built with libheif v1.4.0 and newer. The exporting dialog also features a new 'Save color profile' checkbox.
  • The TIFF importer now asks how to process unspecified TIFF channels: use as non-premultiplied alpha (used to be the default), as premultiplied alpha, or just import as a generic channel. This fixes a known bug with 4-channel (RGBA) TIFF files as demonstrated here.
  • Finally, the PDF exporter was fixed by Lionel to export text layers inside layer groups as text correctly.

Better loading of corrupted XCF files:

  • XCF loading is now a bit more resilient to corruption: it doesn't stop any more at the first layer or channel error; instead it tries to load more layers/channels to salvage as much data as possible from a corrupted XCF file.

Improvements for the macOS version:

  • Alex Samorukov introduced various improvements to the macOS build of GIMP.
  • First and foremost, GIMP is now compatible with macOS Catalina and doesn't have the file permission issue that the 2.10.12 build had.
  • Secondly, the DMG will now open a window with an Applications shortcut that explains how to install it. He also added some fixes for command line users.
  • Finally, Alex built the new version with updated 3rd party components. Among other things, this means support for color profiles in HEIF/HEIC files.

What's New in version 2.10.12:

Improving curves editing and Curves tool:

  • Generic curves interaction

The interaction with curves in general has been greatly enhanced, which is an improvement both to the Curves tool and all other places where curves need tweaking (currently paint dynamics and input device settings):

  • Relative motion when dragging points
  • When dragging an existing curve point, it won't 'jump' anymore to the cursor position upon pressing the button. Instead it will move relatively to its current position as the cursor moves. This allows selecting a point with a quick click without moving it, and adjusting a point position more easily.
  • Additionally, when the cursor hovers above a point, or when dragging a point, the coordinate indicator now show the point's position, rather than the cursor's.
  • Snap to curve when holding Ctrl
  • When holding down Ctrl while adding or dragging a point, the Y-coordinate will snap to the original curve. This is particularly useful for adding points along the curve.
  • Likewise, the coordinate indicator shows the snapped coordinates.
  • Curves tool specific interaction

Additionally, some improvements are specific to the Curves tool:

  • Numeric input of Curves tool points
  • Two new spin-buttons labelled 'Input' and 'Output' are now available in the Curves tool interface. They allow setting the selected point's coordinates numerically and accurately if needed.
  • Add smooth or corner curve-point types
  • Control points can now be either smooth or corner points. Smooth points produce a smooth curve, while corner points result in sharp angles (previously, all points were smooth and this is still the default).
  • Corner points are displayed using a diamond shape, instead of a circle and the type can be changed in the Curves tool.
  • TIFF now has layer support!
  • Thanks to Tobias Ellinghaus, well known as a darktable developer, TIFF can now export images without merging layers.
  • Support of user-installed fonts on Windows
  • Though not fully tested, we now have a temporary support of a new Windows 10 feature. Windows 10 users indeed now have the ability to install fonts without admin permissions since a recent update.
  • Therefore we added this non-admin font folder to our search path when running GIMP. It should be only a temporary workaround since eventually this should be supported by fontconfig, the upstream library used to manage fonts.

Note also that it is not fully tested because of our lack of Windows developers. Therefore we are mostly hoping it will work as expected, and this is a good time to make a call again:

  • Are you a Windows developer? Do you love GIMP? Please contribute!
  • Seriously, none of our current developers use Windows and bugs are piling up in our bug tracker for this platform (same can be said on macOS by the way), whereas GIMP is so enjoyably stable on GNU/Linux. We are happy to do the occasional good deeds, but there are limits to what we can do for a platform we don't use. On the other hands, we happily welcome patches and new contributors!
  • Faster painting
  • GIMP now doesn't replace the paint buffer on every dab if the paint color/pixmap hasn't changed. This results in faster painting on specific cases.
  • As a by-product of the change, the color-from-gradient dynamics is now fixed when the image has a color profile.
  • Incremental mode in the Dodge/Burn tool
  • The Dodge/Burn tool got a new 'Incremental' option which, similarly to the Paintbrush, Pencil, and Eraser tools, applies the effect incrementally as the pointer moves.
  • Free Select tool creates preliminary selection
  • One of GIMP 2.10.0 changes which annoyed many people was that the Free Select tool was not creating a selection immediately when the region was closed. One was forced to perform an additional confirmation step (Enter or double-click).
  • This was done on purpose because we wanted to leave ability to tweak the polygonal selection that is built into the Free Select tool. Yet it could obviously be better, proof being the Rectangle Select tool which still allowed to edit the rectangle even though a selection was pre-created.
  • The Free Select tool now works the same way: even though a preliminary selection exists (allowing to directly copy or delete a contents without additional step), you will still be able to edit this free selection as long as you don't start another selection nor change tools.

New Offset tool:

  • New Offset tool shifts pixels and optionally wraps them around the edges so that you could create repeatable patterns.
  • Offset filter New Offset tool used to make a repeatable heart pattern
  • There's a simple on-canvas interaction available: just drag on the canvas to shift the layer.
  • You can activate the new filter either via Layer > Transform > Offset menu, or via Shift+Ctrl+O shortcut.
  • Moving an intersecting pair of guides
  • The Move tool can now move together an intersecting pair of guides. by dragging the guides at their point of intersection. This is useful when the guides are used to mark a point, rather than a pair of lines (e.g., as is the case for the mandala symmetry guides, which mark the symmetry's point of origin).

Bug fixing:

  • Many bugs were fixed, some more severe than others (in particular a few crashes), as well as some code cleaning, factorization, and so on. The usual deal!
  • More than the new features, we actually thought these issues were enough to warrant this new release.

Among most pesky bugs fixed:

  • crashes for various reasons, with more crashes to fix yet;
  • various color management related bugs;
  • unwanted change of foreground and background colors in tools' presets;
  • brush transformation improved and fixed in various places in symmetry painting mode;
  • a few localization bugs, and most importantly broken translation display for several supported languages (so far, we believe it to be a bug in the Pango dependency);
  • some brush format bugs;
  • And more. GIMP 2.10.12 is the result of about 200 commits in 2 months! We will focus below on two specific bug fixing which deserve mentioning.
  • Improved symmetry painting support
  • The symmetry painting backend got some improvements, which resulted in a few fixes, in particular some artifacts could occur with big brushes or in the Clone/Heal tool when the brush was cropped to the bounds of a drawable. These are now fixed.
  • In the Ink tool as well, the brush shape was not properly transformed. This has been fixed as well.
  • Just open the Symmetry Painting dockable dialog, choose a type of symmetry and paint away!

Color space mixup on exporting images:

  • Several people noticed that exporting some images ended up in washed-up colors sometimes. This was because in some cases, we were exporting by error sRGB colors with a linear profile (especially visible in GIMP 2.10.10 since we were exporting profiles by default even when using a default GIMP profile). We fixed this and took the opportunity to improve GIMP's export logics.
  • Now we are always exporting an explicitly set profile as-is, and pixel colors are stored according to this profile expectation. If you manually assigned a profile, GIMP should indeed always follow your request.

On the other hand, if no explicit profile was set, we implemented various strategies depending on the format:

  • If the export format is able to store high-bit depth colors (e.g. PNG up to 16-bit and TIFF up to 64-bit), we follow the work format.
  • If the export format is 8-bit only (such as JPEG), we transform the data to sRGB in order to avoid posterization and shadow artifacts (except if your work format is 8-bit linear, then we leave it as 8-bit linear for minimal loss).
  • Note that there are still edge cases which we may not find optimal yet regarding how profiles are handled. These should all be greatly improved when we will merge the 'Space Invasion' code (an ongoing mid-term project, as we were already talking about it when releasing GIMP 2.10.8). This code merge should hopefully happen soon enough!
  • Around GIMP

GEGL and babl:

  • During this development span, GEGL 0.4.16 got released (91 commits), as well as babl 0.1.64 (31 commits) and 0.1.66 (7 commits).
  • The biggest user-visible change is probably the cubic sampler coefficient change, which used to produce smooth interpolation, suitable for some cases, but not as sharp as people would expect in most other cases. Now in all places where there is choice of interpolation (all transformation tools, Warp Transform tool, etc.), the result with cubic has changed and produces sharper results.
  • Another notable improvement in GEGL is an updated memory management, by conditionally freeing memory from the heap (thanks to manual calls of malloc_trim()), hence forcing the underlying libc to release memory more often. This behavior is especially suitable for long-running applications whose memory need can greatly vary, such as GIMP. In practice, it means that GIMP process' memory size will now shrink much faster when you will close big images on supporting systems.

What's New in version 2.10.10:

  • Line art detection in the Bucket Fill tool for comic artists
  • Various usability improvements in transformation tools
  • Sample Merged option added to the Heal tool and fixed in the Clone tool
  • Parametric brushes now have 32-bit per channel precision
  • Easier brush and pattern creation workflow
  • On-canvas layer selection
  • Faster saving/exporting and layer groups rendering
  • Initial DDS support
  • Many improvements in GEGL, the image processing engine

What's New in version 2.10.8:

  • Bug fixes and optimizations

What's New in version 2.10.4:

  • The latest update of the stable series delivers bugfixes, simple horizon straightening, async fonts loading, fonts tagging, and more new features.

What's New in version 2.10.2:

  • GIMP 2.10.2 released (bug fixes, HEIF support and new filters)

What's New in version 2.10.0:

  • Image processing nearly fully ported to GEGL, allowing high bit depth processing, multi-threaded and hardware accelerated pixel processing, and more.
  • Color management is a core feature now, most widgets and preview areas are color-managed.
  • Many improved tools, and several new and exciting tools, such as the Warp transform, the Unified transform and the Handle transform tools.
  • On-canvas preview for all filters ported to GEGL.
  • Improved digital painting with canvas rotation and flipping, symmetry painting, MyPaint brush support…
  • Support for several new image formats added (OpenEXR, RGBE, WebP, HGT), as well as improved support for many existing formats (in particular more robust PSD importing).
  • Metadata viewing and editing for Exif, XMP, IPTC, and DICOM.
  • Basic HiDPI support: automatic or user-selected icon size.
  • New themes for GIMP (Light, Gray, Dark, and System) and new symbolic icons meant to somewhat dim the environment and shift the focus towards content (former theme and color icons are still available in Preferences).
  • And more, better, more, and even more awesome!