Chapter 6. Getting Images out of GIMP

Table of Contents

1. Files
1.1. Save / Export Images
1.2. File Formats
2. Preparing your Images for the Web
2.1. Images with an Optimal Size/Quality Ratio
2.2. Reducing the File Size Even More
2.3. Saving Images with Transparency

1. Files

GIMP is capable of reading and writing a large variety of graphics file formats. With the exception of GIMP's native XCF file type, file handling is done by Plugins. Thus, it is relatively easy to extend GIMP to support new file types when the need arises.

1.1. Save / Export Images

[Note] Note

In former GIMP releases, when you loaded an image in some format, let us say JPG or PNG, the image kept its format and was saved in the same format by Save. With GIMP-2.8, images are loaded, imported, in the XCF format as a new project. For example, a sunflower.png image will be loaded as *[sunflower] (imported)-1.0 (indexed color, 1 layer). The leading asterisk indicates that this file has been changed. This image will be saved as sunflower.xcf by Save. To save this image in a format other than XCF, you must use Export.

When you are finished working with an image, you will want to save the results. (In fact, it is often a good idea to save at intermediate stages too: GIMP is a pretty robust program, but we have heard rumors, possibly apocryphal, that it may have been known on rare and mysterious occasions to crash.) Most of the file formats that GIMP can open, can also be used for saving. There is one file format that is special, though: XCF is GIMP's native format, and is useful because it stores everything about an image (well, almost everything; it does not store undo information). Thus, the XCF format is especially suitable for saving intermediate results, and for saving images to be re-opened later in GIMP. XCF files are not readable by most other programs that display images, so once you have finished, you will probably also want to export the image in a more widely used format, such as JPEG, PNG, TIFF, etc.

1.2. File Formats

There are several commands for saving images. A list, and information on how to use them, can be found in the section covering the File Menu.

GIMP allows you to export the images you create in a wide variety of formats. It is important to realize that the only format capable of saving all of the information in an image, including layers, transparency, etc., is GIMP's native XCF format. Every other format preserves some image properties and loses others. It is up to you to understand the capabilities of the format you choose.

Exporting an image does not modify the image itself, so you do not lose anything by exporting. See Export file.

[Note] Note

When you close an image (possibly by quitting GIMP), you are warned if the image is "dirty"; that is, if it has been changed without subsequently being saved (an asterisk is in front of the image name).

Figure 6.1. Closing warning

Closing warning

Saving an image in any file format will cause the image to be considered "not dirty", even if the file format does not represent all of the information from the image.

1.2.1. Export Image as GIF

Figure 6.2. The GIF Export dialog

The GIF Export dialog

[Warning] Warning

The GIF file format does not support some basic image properties such as print resolution. If you care for these properties, use a different file format like PNG.

GIF Options
Interlace

Checking interlace allows an image on a web page to be progressively displayed as it is downloaded. Progressive image display is useful with slow connection speeds, because you can stop an image that is of no interest; interlace is of less use today with our faster connection speeds.

GIF comment

GIF comments support only 7-bit ASCII characters. If you use a character outside the 7-bit ASCII set, GIMP will export the image without a comment, and then inform you that the comment was not saved.

Animated GIF Options
Loop forever

When this option is checked, the animation will play repeatedly until you stop it.

Delay between frames where unspecified

You can set the delay, in milliseconds, between frames if it has not been set before. In this case, you can modify every delay in the Layer Dialog.

Frame disposal where unspecified

If this has not been set before, you can set how frames will be superimposed. You can select among three options :

  • I don't care: you can use this option if all your layers are opaque. Layers will overwrite what is beneath.

  • Cumulative Layers (combine): previous frames will not be deleted when a new one is displayed.

  • One frame per layer (replace): previous frames will be deleted before displaying a new frame.

Use delay entered above for all frames

Self-explanatory.

Use disposal entered above for all frames

Self-explanatory.

1.2.2. Export Image as HEIF/HEIC

HEIF stands for High Efficiency Image File Format. Also known as HEIC High Efficiency Image Coding.

Twice as much information can be stored in a HEIF image as in a JPEG image of the same size, resulting in a better quality. As of October 2019, no browser supports HEIF natively.

More information in Wikipedia.

Figure 6.3. The HEIF/HEIC Export dialog

The HEIF/HEIC Export dialog

These options are self-explanatory.

1.2.3. Export Image as JPEG

JPEG files usually have an extension .jpg, .JPG, or .jpeg. It is a very widely used format, because it compresses images very efficiently, while minimizing the loss of image quality. No other format comes close to achieving the same level of compression. It does not, however, support transparency or multiple layers.

Figure 6.4. The JPEG Export dialog

The JPEG Export dialog

The JPEG algorithm is quite complex, and involves a bewildering number of options, whose meaning is beyond the scope of this documentation. Unless you are a JPEG expert, the Quality parameter is probably the only one you will need to adjust.

Quality

When you save a file in JPEG format, a dialog is displayed that allows you to set the Quality level, which ranges from 0 to 100. Values above 95 are generally not useful, though. The default quality of 85 usually produces excellent results, but in many cases it is possible to set the quality substantially lower without noticeably degrading the image. You can test the effect of different quality settings by checking Show Preview in image window in the JPEG dialog.

[Note] Note

Please note, that the numbers for the JPEG quality level have a different meaning in different applications. Saving with a quality level of 80 in GIMP is not necessarily comparable with saving with a quality level of 80 in a different application.

Use quality settings from original image

If a particular quality setting (or quantization table) was attached to the image when it was loaded, then this option allows you to use them instead of the standard ones.

If you have only made a few changes to the image, then re-using the same quality setting will give you almost the same quality and file size as the original image. This will minimize the losses caused by the quantization step, compared to what would happen if you used different quality setting.

If the quality setting found in the original file are not better than your default quality settings, then the option Use quality settings from original image will be available but not enabled. This ensures that you always get at least the minimum quality specified in your defaults. If you did not make major changes to the image and you want to save it using the same quality as the original, then you can do it by enabling this option.

Show preview in image window

Checking this option causes each change in quality (or any other JPEG parameter) to be shown in the image display. (This does not alter the image: the image reverts back to its original state when the JPEG dialog is closed.)

Keep metadata

If the image you loaded has Exif, XMP, IPTC metadata, they are preserved, and you can keep them or not when exporting to JPEG.

Save thumbnail, Save color profile

Many applications use the small thumbnail image as a quickly available small preview image.

Comment

You can edit the comment attached to the image you loaded or write a new one.

Advanced Options

Some information about the advanced settings:

Optimize

If you enable this option, the optimization of entropy encoding parameters will be used. The result is typically a smaller file, but it takes more time to generate.

Smoothing

JPG compression creates artifacts. By using this option, you can smooth the image when saving, reducing them. But your image becomes somewhat blurred.

Use arithmetic coding

Arithmetic encoding is a form of entropy encoding (a lossless data compression scheme) that, since GIMP-2.10 can be used in exporting as JPEG. Images using arithmetic encoding can be 5 - 10 % smaller. But older softwares may have trouble opening these images.

Use restart markers

The image file can include markers which allow the image to be loaded as segments. If a connection is broken while loading the image in a web page, loading can resume from the next marker.

Interval (MCU rows)

JPEG images are stored as a series of compressed square tiles named MCU (Minimum Coding Unit). You can set the size of these tiles (in pixels).

Progressive

With this option enabled, the image chunks are stored in the file in an order that allows progressive image refinement during a slow connection web download. The progressive option for JPG has the same purpose as the interlace option for GIF. Unfortunately, the progressive option produces slightly larger JPG files (than without the progressive option).

Subsampling

The human eye is not sensitive in the same way over the entire color spectrum. The compression can use this to treat slightly different colors that the eye perceives as very close, as identical colors. Three methods are available :

  • 1x1,1x1,1x1 (best quality): Commonly referred to as (4:4:4), this produces the best quality, preserving borders and contrasting colors, but compression is less.

  • 2x1,1x1,1x1 (4:2:2): This is the standard subsampling, which usually provides a good ratio between image quality and file size. There are situations, however, in which using no subsampling (4:4:4) provides a noticeable increase in the image quality; for example, when the image contains fine details such as text over a uniform background, or images with almost-flat colors.

  • 1x2,1x1,1x1 This is similar to (2x1,1x1,1x1), but the chroma sampling is in the horizontal direction rather than the vertical direction; as if someone rotated an image.

  • 2x2,1x1,1x1 (smallest file): Commonly referred to as (4:1:1), this produces the smallest files. This suits images with weak borders but tends to denature colors.

DCT Method

DCT is discrete cosine transform, and it is the first step in the JPEG algorithm going from the spatial to the frequency domain. The choices are float, integer (the default), and fast integer.

  • float: The float method is very slightly more accurate than the integer method, but is much slower unless your machine has very fast floating-point hardware. Also note that the results of the floating-point method may vary slightly across machines, while the integer methods should give the same results everywhere.

  • integer (the default): This method is faster than float, but not as accurate.

  • fast integer: The fast integer method is much less accurate than the other two.

1.2.4. Export Image as PNG

Figure 6.5. The Export Image as PNG dialog

The “Export Image as PNG” dialog

Interlacing

Checking interlace allows an image on a web page to be progressively displayed as it is downloaded. Progressive image display is useful with slow connection speeds, because you can stop an image that is of no interest; interlace is of less use today with our faster connection speeds.

Save background color

If your image has many transparency levels, the Internet browsers that recognize only two levels, will use the background color of your Toolbox instead.

Save gamma

Gamma correction is the ability to correct for differences in how computers interpret color values. This saves gamma information in the PNG that reflects the current Gamma factor for your display. Viewers on other computers can then compensate to ensure that the image is not too dark or too bright.

Save layer offset

PNG supports an offset value called the oFFs chunk, which provides position data. Unfortunately, PNG offset support in GIMP is broken, or at least is not compatible with other applications, and has been for a long time. Do not enable offsets, let GIMP flatten the layers before saving, and you will have no problems.

Save Resolution

Save the image resolution, in ppi (pixels per inch).

Save creation time

Date the file was saved.

Save comment

You can read this comment in the Image Properties.

Save color values from transparent pixels

When this option is checked, the color values are saved even if the pixels are completely transparent. But this is possible only with a single layer, not with a merged composition. When a multi-layer image gets exported to a single-layer file format, there is no way GIMP could preserve the color values in the transparent pixels.

Pixelformat

TODO

Compression level

Since compression is not lossy, the only reason to use a compression level less than 9, is if it takes too long to compress a file on a slow computer. Nothing to fear from decompression: it is as quick whatever the compression level.

Keep metadata

If the image you loaded has Exif, XMP, IPTC metadata, they are preserved, and you can keep them or not when exporting to PNG.

Save Defaults

Click to save the current settings. Latter, you can use Load Defaults to load the saved settings.

[Note] Note

The PNG format supports indexed images. Using fewer colors, therefore, results in a smaller file; this is especially useful for creating web images; see Section 6.6, “Indexed mode”.

Computers work on 8 bits blocks named Byte. A byte allows 256 colors. Reducing the number of colors below 256 is not useful: a byte will be used anyway and the file size will not be less. More, this PNG8 format, like GIF, uses only one bit for transparency; only two transparency levels are possible, transparent or opaque.

1.2.5. Export Image as TIFF

Figure 6.6. The TIFF Export dialog

The TIFF Export dialog

Compression

This option allows you to specify the algorithm used to compress the image.

  • None: is fast, and lossless, but the resulting file can be very large.

  • LZW: The image is compressed using the Lempel-Ziv-Welch algorithm, a lossless compression technique. This is efficient and fast. More information at [WKPD-LZW].

  • Pack Bits: is a fast, simple compression scheme for run-length encoding of data. Apple introduced the PackBits format with the release of MacPaint on the Macintosh computer. A PackBits data stream consists of packets of one byte of header followed by data. (Source: [WKPD-PACKBITS])

  • Deflate: is a lossless data compression algorithm that uses a combination of the LZ77 algorithm and Huffman coding. It is also used in Zip and Gzip files and PNG images. Source: [WKPD-DEFLATE].

  • JPEG: is a very good compression algorithm but lossy. This is the same compression as used in JPEG images. Since it is lossy, you should not use this when image quality is important. This compression can not be used when your image is in indexed mode.

  • CCITT Group 3 fax and CCITT Group 4 fax are black and white formats developed to transfer images by FAX.

    [Note] Note

    These two compression modes can only be selected, if the image is in indexed mode and reduced to two colors. Use ImageModeIndexed to convert the image to indexed mode. Make sure that Use black and white (1-bit) palette is checked.

Save layers

Since GIMP-2.10.12, you can save layers when exporting to TIFF. Each layer will be a separate page in the TIFF image.

Crop layers

When Save layers is checked, this option, which is enabled by default, will resize all layers to the size of the image. TIFF images can not have negative offsets. This option enables you to import the TIFF again without having to change the position of layers that had a different size as the image in the original.

Save color values from transparent pixels

When this is enabled the color values are saved even if the pixels are completely transparent.

Metadata (edit)

You can click the (edit) link to open the metadata editor to change or add any metadata that you want to be included in the image. Note: you will also still need to enable the relevant metadata saving options listed below.

Save Exif data

When this option is enabled existing EXIF metadata will be saved in the exported TIFF image.

Save IPTC data

When this option is enabled existing IPTC metadata will be saved in the exported TIFF image.

Save XMP data

When this option is enabled existing XMP metadata will be saved in the exported TIFF image.

Save color profile

When this option is enabled the color profile will be saved in the exported TIFF image.

Save thumbnail

When this option is enabled a thumbnail will be saved as the second page in the exported TIFF image. This will also cause certain EXIF tags to be saved even if you have disabled saving EXIF metadata.

Save GeoTIFF data

When this option is enabled GeoTIFF metadata that was present in the original image will be saved in the exported TIFF image.

Save comment

Here you can enable saving a comment that is associated with the image. The comment can be entered in the text box below this option.

1.2.6. Export Image as MNG

Figure 6.7. Export MNG File Dialog

Export MNG File Dialog

MNG is acronym for Multiple-Image Network Graphics.

The main problem is that Konqueror is the only Web navigator that recognizes the MNG animation format. Please see http://en.wikipedia.org/wiki/Multiple-image_Network_Graphics.