The GNU Image Manipulation Program, or GIMP, is a free raster graphics editor used to process digital graphics and photographs. Typical uses include creating graphics and logos, resizing and cropping photos, altering colors, combining multiple images, removing unwanted image features, and converting between different image formats. GIMP can also be used to create basic animated images in GIF format. It is often used as a free software replacement for Adobe Photoshop, the most widely used bitmap editor in the printing and graphics industries; however, it is not designed to be a Photoshop clone. The project's mascot is named Wilber.
The project was started in 1995 by Spencer Kimball and Peter Mattis and is now maintained by a group of volunteers under the auspices of the GNOME Project. The current version of GIMP works with numerous operating systems, including all modern Linux distributions, all recent versions of Microsoft Windows, and Apple's Mac OS X.
GIMP's manipulation tools can be accessed via the toolbox, menu paths, and dialog boxes (which can be grouped in docks). They include filters and brushes, as well as transformation, selection, layer and masking tools.
For example, GIMP comes with 48 standard brushes, plus facilities to create new ones. Brushes (and brush tools) can be used in hard-edged, soft-edged, or eraser modes, be applied at different opacities, or used with different modes for composition.
GIMP also has a palette with RGB, HSV, color wheel, CMYK, and mixing modes, plus tools to pick colors from the image with various averaging options. There is support for hexadecimal color codes (as used in HTML). "CMYK" colors are immediately translated into RGB when used; GIMP does not have any built-in support for CMYK mixtures that cannot be represented in RGB, such as rich blacks, though they can be simulated to a limited extent with third-party add-ons.
GIMP supports gradients, which integrate into its other tools (such as brushes and fills) to shade image areas with automated color blending. It includes a variety of built-in gradients, and as with the brushes, also allows the user to customize and create their own gradient fills.
GIMP can perform rectangular or circular selection, freehand selection, and "by color" selection. Alternatively, the Smart Selection tool, known as the "Magic Wand", can be used to select contiguous regions. The Intelligent Scissors (iScissors) tool can be used to auto-create paths between regions defined by strong color-changes. the 'Foreground select' tool is available since 2.4 uses vision science to select an object in the foreground with some few mouse strokes by the user.
GIMP has support for layers, including transparent layers, which can be shown, hidden, or made semitransparent. It also supports transparent and semitransparent images. Channels add different types of opacity and color effects to images.
Paths containing line segments or Bezier curves can be created using the Path tool. Paths can be named, saved, and painted (or "stroked") with brushes, patterns, or various line styles. Paths can also be used to create complex selections.
GIMP operations can be automated with scripting languages. A Scheme interpreter named Script-Fu is built in (but switched to TinyScheme as of GIMP 2.4.), and external Perl, Python, or Tcl can be used. Ruby support is in experimental development. These scripts and plugins for GIMP can be used interactively, or combined non-interactively.
GIMP's user interface is built using GTK+, a widget toolkit originally written for the program. GTK+, as the GIMP Toolkit, was initially a part of the GIMP source tree, but has since been refactored due to its usefulness outside the scope of GIMP. GTK+ is also used as the widget toolkit for the GNOME desktop environment. GTK+ was intended as a replacement for Motif, a proprietary toolkit on which GIMP originally depended. GIMP and GTK+ were originally designed for the X Window System running on Unix-like operating systems, but have since been ported to Microsoft Windows, Mac OS X, and SkyOS.
|Major version||Minor version(s)||Release date||Significant changes|
|0.x||0.54–0.99.31||February 15, 1996||?|
|1.0.x||1.0.0–1.0.3||June 5, 1998||?|
|1.2.x||1.2.0–1.2.5||December 25, 2000||Improvements of user interface, bug fixes.|
|2.0.x||2.0.0–2.0.6||March 23, 2004||Many new tool options, GIMP now using GTK2+ graphical toolkit, not GTK+. Tabs and Docks system introduced. Script-fu scripting support improved greatly. Allows already-created text to be edited. CMYK color support.|
|2.2.x||2.2.0–2.2.17||December 19, 2004||New plugins support, keyboard shortcut editor, previews for transform tools. New GIMP hardware controllers support. Drag/drop and copy/paste from GIMP to other applications improved.|
|2.4.x||2.4.0||October 24 2007||Color management support, scalable brushes, new and rewritten selection tools and overall user interface changes (new icon theme). Increased file format support. Full screen editing, and new crop tools. Improved printing quality. Improved interface for external device input.|
|2.4.1||October 31 2007||?|
|2.4.2||November 20 2007||?|
|2.4.3||December 16 2007||?|
|2.4.4||January 30 2008||?|
|2.4.5||March 1 2008||Bugfixes|
|2.4.6||May 30 2008||Bugfixes|
|2.4.7||August 21 2008||Bugfixes|
|2.6.0||October 1 2008||GEGL, and first iteration of UI redesign|
GIMP originally stood for General Image Manipulation Program. Its creators, Spencer Kimball and Peter Mattis, began developing GIMP as a semester-long project at the University of California, Berkeley in 1995. The name was changed to the GNU Image Manipulation Program in 1997, after Kimball and Mattis had graduated, when it became an official part of the GNU Project.
Even at this early stage of development GIMP functionality was extensive. It could select regions using rectangle, ellipse, free, fuzzy, bezier, and intelligent selection tools, and rotate, scale, shear and flip images. It had bucket, brush and airbrush painting tools, and could clone, convolve, and blend images. It had text tools, effects filters (such as blur and edge detect), and channel and color operations (such as add, composite, decompose). The plugin system allowed for addition of new file formats and new effect filters. It supported multiple undo and redo operations.
It ran on Linux 1.2.13, Solaris 2.4, HP-UX 9.05, and SGI IRIX operating systems. It was rapidly adopted by users who created tutorials, displayed artwork and shared techniques. An early success for the GIMP was the Linux penguin Tux, as drawn by Larry Ewing using Gimp 0.54. By July 5, 1996 the volume of messages posted to the mailing list had risen and the mailing list was split into two lists, gimp-developer and gimp-user. Currently, user questions are directed to the gimpnet IRC channel.
GIMP 0.60 no longer depended on the Motif toolkit. Improvements had been made to the painting tools, airbrush, channel operations, palettes, blend tool modes, image panning and transformation tools. The editing workflow was improved by enabling rulers, cutting and pasting between all image types, cloning between all image types and ongoing development of a layers dialog.
New tools included new brushes (and a new brush file format), grayscale and RGB transparency,"Bucket fill" patterns and a pattern selection dialog, integrated paint modes, border, feather and color selectors, a pencil and eraser paint tool, gamma adjustments and a limited layer move tool.
The new widgets were managed by Peter Mattis and were called GTK for GIMP toolkit and GDK for GIMP drawing kit.
An official website was constructed for GIMP during the 1.0 series, designed by Adrian Likins and Jens Lautenbacher, now found at classic.gimp.org which provided introductory tutorials and additional resources. On April 13 1997, GIMP News was started by Zach Beane, a site that announced plug-ins, tutorials and articles written about GIMP. May 1997, Seth Burgess started GIMP Bugs, the first 'electronic bug list'.
Marc Lehmann developed a perl scripting plug-in. Web interfaces were possible with the GIMP 1.0 series, and GIMP Net-fu can still be used for online graphics generation.
The 1.2 series was the final GIMP 1 series.
GIMP is available for a variety of operating systems and computer architectures. There are a number of variations and derivative programs, including ports to other operating systems and forks with task- or OS-specific modifications. The GIMP website does not distribute compiled versions of GIMP, only the project's source code.
A port of GIMP to Microsoft Windows was started by Finnish programmer Tor "tml" Lillqvist in 1997. The GIMP website links to binary installers compiled by Jernej Simončič for the platform.
GIMPVS is a GTK+ and GIMP Distribution compiled using Microsoft compilers. The Distribution aims at providing artists a stable GIMP on Microsoft platforms and developers access to GTK+ and GIMP development directly from Microsoft Visual Studio (2005 and 2008 editions). The latest GTK libraries are included GTK 2.15.0 comes ready to use in both Debug and Release versions
Seashore is a program based on GIMP for Mac that uses the native Cocoa interface in Mac OS X. The program is currently in beta (0.1.9) and includes only a small subset of the many filters available in GIMP.
Gimp.app provides a self-contained application bundle of GIMP for Mac OS X. Gimp.app has many features that Seashore does not have, but being built upon the GTK for its GUI features, it requires a version of Apple's X11 to run it.
A project named osx-gimp provides native builds of GIMP on Mac OS X using GTK+ built for Quartz. It is mostly functional, but there is currently limited support for the Quartz backend of GTK+, and it is considered a beta version.
CinePaint, formerly known as "Film Gimp", is a fork of GIMP version 1.0.4, used for frame-by-frame retouching of feature film. The present "Film Gimp" version supports up to 32-bit IEEE-floating point color depth/channel. CinePaint supports color management and HDR. CinePaint is used primarily within the film industry due mainly to its support of high-fidelity image formats.
As an application originally intended only for the X Window System, GIMP does not attempt to manage its own windows, but entirely delegates this responsibility to the window manager. GIMP uses a (controlled) single document interface, and it also uses multiple windows for its tools, color palette, and so forth. This behaviour is not well supported on most platforms because most programs use either a multiple document interface or an SDI with integrated toolbars. The GIMP approach avoids the MDI problem of windows being constrained within a larger window, without requiring the additional code that most other applications use to solve this problem; but it is also a frequent cause of criticism. It generally leads to desktop clutter, and to the situation where the toolbox and layer windows end up hidden behind other unrelated applications, forcing users to manage the windows themselves. A partial solution is available by choosing a window manager that implements certain very particular functionality; however, this functionality is not available at all on Microsoft Windows, and is also not present in all Linux window managers. In recognition of these issues, the GIMP developers have been investigating other solutions, and future versions of the program are expected to introduce a better interface.
GIMPshop is a modification to GIMP, rearranging its user interface to mimic that of Adobe Photoshop by renaming functions and rearranging menus; on Windows this also includes the use of a multiple document interface.
GIMP is often criticized as having other usability problems. A special edition called Instrumented GIMP was created at the University of Waterloo, which tracks and reports user interaction with the program, to generate statistics to guide future improvements.
Photoshop does not support GIMP's native XCF file format, but GIMP can read and write most Photoshop native PSD format files.
Like Photoshop, GIMP features support for 8-bit per-channel images. Its Intelligent Scissors are similar to Photoshop's Magnetic Lasso tool, and many basic tools and filters have identical functionality in both.
GIMP and Photoshop differ in their color management features in ways that matter to some users. Photoshop has support for 16-bit, 32-bit, and floating point images, support for the Pantone color matching system, or spot color and support for color models other than RGB(A) and greyscale, such as CMYK and CIE XYZ. GIMP, like other open source applications, does not support Pantone numbers for spot colors because of legal issues; it has basic CMYK support. Photoshop features extensive gamma correction support.
In addition, Photoshop contains several productivity features and tools not supported by GIMP, such as native support for Adjustment layers (layers which act like filters), layer styles and text blending options like drop shadow and glow, undo history "snapshots" that persist between sessions, the history brush tool, folders in the layer window, a free transform tool to rotate, scale and move in one tool and multiple styles for text. GIMP also requires basic programming knowledge to build an automation upon it, usually Script-Fu (scheme) or Python-Fu, while Photoshop can record the user's actions and repeat them with a "Play" button. However, Photoshop's automation is not as powerful as GIMP's.
GIMP's open development model means that it is much more readily available and at zero cost, on more operating systems, plugin development is not limited by developers and as such has no need to compete with Photoshop; by comparison, access to Adobe Photoshop's SDK requires authorization and the commercially produced software is in competition with Corel Paint Shop Pro as well as the other Open Source, GNU or otherwise freely available manipulation applications.
A modification of GIMP, GIMPshop (also free and open source), modifies GIMP with the intent to replicate the feel of Adobe Photoshop. Its primary purpose is to make users of Photoshop feel comfortable using GIMP, and potentially convert them to using GIMP.
Another modification, GimPhoto comes with new menu layout, great selection of plugins, and many additional resources for digital photo retouching and image editing application package.
GIMP has read/write support for popular image formats such as BMP, JPEG, PNG, GIF and TIFF, along with the file formats of several other applications such as Autodesk flic animations, Corel Paint Shop Pro images, and Adobe Photoshop Documents. Other formats with read/write support include PostScript documents, X bitmap image and Zsoft PCX. GIMP can also read and write path information from SVG files, and read/write ICO Windows icon files.
GIMP can export to MNG layered image files and HTML (as a table with coloured cells), C source code files (as an array) and ASCII Art (using a plugin to represent images with characters and punctuation making up images), though it cannot read these formats.