Technology Brief:
Server Operating System
If you or your users have a computer peripheral capable of capturing, displaying, printing, or in some other way dealing with color at a user-visible level, you are already aware of some of the problems inherent with dealing with color in the digital world. If you are tired of explaining to your users why they see different colors when they look at the same image on different monitors, if you have carefully put together a newsletter and wondered if the unexpected colors in the proof you received from your neighborhood printer was a cruel joke, if you have ever tried to buy a "Forest Green" shirt on the Internet and then wondered about the actual color of the shirt you received in the mail, you have experienced the problems with digital color first-hand.
Color management does not magically solve all of these problems; it simply gives you and the user more control over them. Basically, each color peripheral can differ on one or more of the following color characteristics:
In most cases, these differences are unavoidable because of the device or medium limitations. However, these differences can be tested for and recorded in an International Color Consortium (ICC) profile using one of many software and hardware products currently available on the market. These ICC profiles are then used to communicate the color information of each device through the Image Color Matching (ICM) API. Applications that call ICM API functions will be able to accurately display, print, and pass colors on to other users and applications. This approach helps ensure that colors are represented accurately to users, regardless of the device they use.
As you might imagine, this works only if all of the pieces are in place. Microsoft's first implementation of color management support was released in the Microsoft® Windows® 95 operating system as ICM 1.0. This version of ICM is designed to address the needs of applications that do not work in colors outside of RGB and that want color management to be fairly transparent for the end user. ICM 1.0 requires that ICC profiles be installed for all of the color devices on the user's system, and it requires the application that is to accurately portray colors to the user to support the ICM 1.0 API.