Color Spaces and ICC profiles

Presentation devices, such as computer monitors and printers, create colors differently. Because of these differences, colors must be described differently for each device. The different methods of describing colors are called color spaces. In addition, each device might have one or more International Color Consortium (ICC) profiles associated with it. ICC profiles are used when an image or another object is converted to the color space of a different device.

Each device has its own individual color space and range of colors that it can display or print. The color space specifies how color information is represented in an image when it is displayed on a particular device. As the image is passed from one device to the next, the color information about the image is converted from the color space of the source device to the color space of the destination device. Because color spaces do not exactly match between devices, some of the color information can be lost or modified in the conversion process.

A color space is a representation of the individual colors that can be combined to create other colors. Some color spaces that are relevant to printing are:

  • RGB

    In an RGB color space, red, green, and blue light are combined in different amounts and intensities to create different colors. RGB colors are often specified as single-byte integers numbered from 0 through 255. You can specify 256 levels of intensity for each of the three colors. For example:

    • R=0, G=0, B=0 yields black
    • R=255, G=255, B=255 yields white
    • R=251 , G=254 , B=141 yields a pale yellow
    • R=210, G=154, B=241 yields a light purple
    Devices such as monitors, digital cameras, and scanners generally use RGB color spaces to describe colors. Two standard implementations of RGB color spaces are sRGB, which is most often used for Web graphics, and Adobe RGB (1998), which we recommend for graphics that are printed.

  • CMYK

    In a CMYK color space, cyan (bright blue), magenta (bright red-pink), yellow, and black pigments are combined to create different colors. CMYK values are often represented as a percentage. The percentage represents the portion of a particular area of paper that is covered by ink or toner. For example:

    • C=0%, M=0%, Y=0%, K=100% yields black
    • C=0%, M=0%, Y=0%, K=0% yields a blank area on the page
    • C=1.6%, M=0%, Y=44.7%, K=.4% yields a pale yellow
    • C=17.6%, M=39.6%, Y=5.5%, K=5.5% yields a light purple
    Color printers use the CMYK color space; they are loaded with ink or toner in each color. When the printer places dots of the correct sizes next to and on top of each other on a page, your eye interprets them as the intended color.

    Implementations of the CMYK color space vary from printer to printer and from paper to paper. Because the original color space of most images is an RGB color space, it is best to leave images in an RGB color space so they retain their original characteristics. That way, your print server or printer has as much of the original color information as possible when it converts the images to the most appropriate CMYK color space for the printer and paper combination.

    If you save an image by using the CMYK color space, make sure that you either save an ICC profile for that color space or use a standard non-device specific CMYK color space like SWOP or Coated FOGRA27 and associate the appropriate ICC profile with the image.

  • Both RGB and CMYK values can be expressed in different ways. For example, in the PostScript data stream, the values range from 0.0 to 1.0, while in some graphic arts programs they can be expressed in hexadecimal numbers or as percentages.

An ICC profile contains information for converting an image between a device-specific color space and a device-independent color space. A device-independent color space is a color space that does not depend on or relate to the characteristics of any particular device, but rather contains all colors for all gamuts. The ICC identified a specific profile connection space (PCS) as the target device-independent color space for all ICC profiles.

You can use an input ICC profile to translate color data created on one device (such as a digital camera) into the PCS. Then you can use an output ICC profile to convert from the PCS into the native color space of a different device (such as a printer). Converting images from one color space to another is process-intensive and can affect performance in your print system, although it is the best way to maintain consistent color for the devices in your system.