LJ Archive

GIMP 2.8

Shashwat Pant

Issue #224, December 2012

After years of exhaustive and sluggish development, the venerable raster image editor finally has a new release. Laden with new features and a completely new UI, the open-source image editor tries to appeal to graphics designers. Let's take an in-depth look at the new version of the popular editor, GIMP.

Professional graphics programs always have been proprietary OS turf, but with time and massive development, the Open Source community has made the ecosystem an artist's resort. Ranging from boggling 3-D processing elements to nifty vector processing, Linux graphics editing now is mature enough to sustain artists' enthusiasm for Linux,

Until recently, GIMP's interface was very much a mixed-bag experience—too perplexing with a lack of efficient window control. Besides, its meager 8-bit channel support was a major hurdle in mass adoption. Finally, after four years of development following GIMP 2.6, developers closed the curtain on the next major release. GIMP 2.8 surpasses the older iteration with a more stable and feature-rich approach.

On June 5, 2012, taking a huge four-year window for development, developers finally presented the much awaited version of GIMP 2.8. Unlike 2.6, where major changes were made in the core base of the software, 2.8 brings an overall makeover of the software stack. It features a brand-new UI with single window mode, many nifty cosmetic changes and much awaited changes in the core, such as support for OpenCL hardware acceleration for improved and faster results.

The main idea behind the new interface is to provide smoother, more intuitive and better manageability while working with multiple images, along with support for higher-bit raw files and hardware acceleration, paving the way for enhanced editing without sacrificing performance.

So without further ado, let's take an in-depth look at the newly refurbished GIMP. Since there are no bug releases at the time of this writing, I am using the vanilla variant, 2.8.0. The hardware I used for testing is based on AMD's first-generation APU—that is, Llano 3850 with 4GB of RAM.

Getting GIMP 2.8

GIMP is one of the premier software packages in the Linux ecosystem, and it comes pre-installed on almost all distributions. To get the latest version of GIMP, check your package manager. If your distribution doesn't ship with the latest version, you can compile it from the tarballs provided at the GIMP Web site.

Users looking for the latest build should grab the source from the GIMP Git repository at developer.gimp.org/git.html; however, in order to maintain compatibility, you must ensure that all dependencies, such as GEGL and BALB, also are updated.

The best part about GIMP is its light nature. The application is uniquely positioned and designed so that it can run on any hardware without any glitches, and the measly install and package size makes it pocket-friendly software, so if you want to carry it around, you can have an installation of GIMP in your portable driver.

The first notable change in the GIMP is the splash screen. Developers have now opted for a wider and bigger screen, much different from the long flat splashes that debuted with older iterations. Once the application opens though, you will notice the same old floating windows and docks. The developers have refrained from switching completely to single window mode with this release.

Figure 1. GIMP 2.8 Splash Screen

Single Window Mode

The most touted feature that initially was set to debut with GIMP 2.10, finally arrives for mass adoption and testing. Single window mode is disabled by default, but you can enable it from Windows→single window mode. Once you have enabled the option, GIMP will wrap all the floating boxes into a single entity making it smoother and more efficient to work with.

Figure 2. Single Window Mode in GIMP 2.8

To position GIMP more uniquely in the competitive software ecosystem, developers have opted for a more intuitive approach, which is reminiscent of other major software solutions. The single window mode is more efficient and works across all desktop environments, unlike the Utility Window that debuted with GIMP 2.6, which had issues with the KDE Kwin windows manager. Even in single window mode, you can customize the GIMP toolboxes the way you like, so the liberty to change GIMP according to your tastes still holds true.

Tabbed Navigation

The other major UI change is the tabbed view. Often photographers and designers work with multiple images, so it usually is cumbersome for an artist to work with multiple windows. To tackle this issue and provide an easy way to switch back and forth when dealing with multiple images, GIMP has come up with a tabbed view of all the active windows.

Figure 3. Tabbed Image View in GIMP

The tabbed view sits on top of the editing canvas and displays a small thumbnail preview of all the active windows—an efficient way to toggle between multiple images. It's a feature that isn't very new among graphics editors, but it still is a worthy add-on for multitasking with images easily.

Other UI Changes

Major UI changes have overshadowed most of the new release's makeover; however, the developers have paid close attention and fine-tuned some smaller areas and made changes where they matter most:

  • Multi-column dock: with previous versions, it was possible to group multiple docks together in a tabbed view, but with GIMP 2.8, developers are allowing users to dock the window sideways or in vertical view. The ability to stack multiple docks is a nice way to let users modify the look and feel freely according to their own needs and working area.

  • Transparency slider: GIMP 2.8 brings a new transparency slider to the table. Initially suggested with the GIMP usability project, the new idea saw daylight with the final release. The changes are tailor-made to target users with tablets and those who use a stylus or pen for drawing and painting with the GIMP.

  • Additional space for toolboxes: the docking bars now have more area and less unused space. Developers have removed the top unused area and done away with the tab information that took up a lot of space. As a result, toolboxes are more efficient and have less clutter.

  • Save and export features: GIMP's latest release has two new ways to save files. The previous save feature worked for saving both GIMP's native .xcf files (that save all the detailed information) along with native MIME image formats, such as .png, .jpg and so on. With GIMP 2.8, the save feature will save images only in GIMP's native .xcf format. To save images in MIME image formats, you have to choose the Export option from the file menu.

Figure 4. Multiple Tool Bars Docked Sideways

Figure 5. New Opacity Slider Enhanced for Touch Devices

Figure 6. New Save and Export System

That sums up GIMP's changes in the user interface department. However, many bold changes in the new release not only enhance the editing experience but also pave the way for future GIMP development.

Layer Grouping

The most painful part in editing and creating huge images are layers. An image is an amalgamation of many layers, and managing images with many layers can be a daunting task. To provide an easy workaround, GIMP 2.8 boasts layer grouping features. You simply create a new group, and if you want to add layers, simply drag and drop into the layer group.

Figure 7. Layer Grouping with Multiple Layers Grouped

Inside the layer group, you can carry out all the generic layer-related tasks, so these new groups don't limit your editing.

Resource Tagging

Tagging is an efficient way to locate data, especially if you have several plugins, brushes and gradients installed. GIMP 2.8 lets you easily tag resources that allow you to navigate quickly through the massive resources at your disposal.

On-Canvas Text Editing

This feature created great hoopla with the GIMP 2.8 release. On-canvas editing, which was part of a project from Google's Summer of Code 2011, allows you to edit text directly in the canvas—no more pop-up boxes for adding text to images. The main advantage of the on-canvas editor is to provide a clutter-free and more precise experience.

Figure 8. On-Canvas Editing in Action

Cairo Adoption

All on-canvas tools, such as perspective transformation, shear, rotate and scale tools, are redrawn using the Cairo graphics library. As a result, the tools look more professional, and they carry a new on-canvas status indicator and no longer use the ubiquitous status bar at the bottom.

GEGL and OpenCL Implementation

Starting with GIMP 2.6, GEGL has come a long way with major improvements. The most important is support for OpenCL. With support from AMD and a GSOC project, GIMP now scales with graphics processors for image processing, which makes a normal image function much faster.

GIMP, being an image editor, requires you to work with array variables and even multiprocessing capabilities are needed to complete tasks quickly; however, with the advent of SIMD-based processors (graphics card/processors) and OpenCL, it is now much easier for graphics-intense applications to leverage their work on SIMD engines for faster processing.

However, the current state of GEGL/OpenCL is dismal in Linux. GEGL doesn't scale well, and in fact, it performs much slower when compared to plain CPU-based processing. This could very well be the AMD driver's fault, as its OpenCL support and performance in Linux is still flaky.

GEGL also has developed support for higher-bit image processing, which is still in development and should debut with GIMP 2.10. Developers have already laid out a plan for fully functional and complete GEGL integration with GIMP 2.10, so in future releases, all the functions will be done in parallel using OpenCL code stack.

Closing Thoughts

With many nifty add-ons, such as mathematical calculations in resize windows, improved cage transformation tools and API changes for simplified script writing, GIMP 2.8 has come a long way and is a far cry from its older versions.

The revamped UI and new underlying code have given GIMP a much-needed momentum. With GIMP 2.8, developers have covered many milestones, providing a more enhanced interface along with bleeding-edge OpenCL acceleration.

However, GEGL support and the dismal OpenCL performance, at least under Linux, have kept me thinking. With refinements every day, I believe that with GIMP 2.10, we will have full-blown OpenCL-accelerated image editing.

Looking forward, GIMP 2.10 and 3.0 will bring an even more massive changelog, making it a worthy competitor to proprietary solutions. With GIMP 2.8, developers have cleared many hurdles that hindered its mass adoption. The clunky interface is more usable and intuitive than ever. GIMP 2.8 establishes itself as one of the premier open-source alternatives to proprietary solutions, providing bleeding-edge solutions with an intuitive interface and an ever-improving ecosystem.

Shashwat Pant is a FOSS enthusiast and hardware freak. He likes to tweak his hardware for optimum performance. He is an IT Engineering student studying in India and likes to review the latest FOSS software and distributions.

LJ Archive