Standard Color Space Support and Why It Helps
Perhaps the single most important thing in color management is the profiles. In order to correctly display or print a scanned image, you need to have a good profile of the scanner that created the image. You also need a good profile of the monitor or printer or both, depending on whether you are viewing or printing the image or both. These profiles communicate to ICM the color characteristics of each device. This is where having and supporting a standard color space is very useful. Let's take our earlier example and follow it down two different paths. In both cases, these paths are assuming that we are starting with a system that has a scanner, a monitor, and a printer, and profiles installed for each of these devices.
- Device-dependent profiles: After you scan your image, your scanning software could embed your scanner's profile into the image—this is supported in TIFF and DIB with the v5 header—or it could simply save the image or pass the bits onto the application. Now an application is going to use the image and display it on the screen. Working together, the application and ICM will use the scanner profile, the monitor profile, and the color matching intent to create a transform. This transform will be used to modify the image colors, moving them into the monitor's device-specific color space.
- Since the above scenario involves adding profiles to files, files will become larger. Adding bits, regardless of how few, is painful on the Internet. If every image on a Web site is from a different source, the user will be downloading the device-specific profile for each image. This is painful, but at times appropriate. However, there is another option.
- Standard color space profiles: Let's look at this same scenario with a standard color space profile. A good example of a standard color space is the sRGB color space that was created by Hewlett-Packard and Microsoft to provide a good calibrated RGB that works well with monitors and other standards in the color industry. After you scan your image, your scanning software and ICM could work together to use your scanner's profile, the standard color space profile, sRGB, and the color matching intent to create a transform. This transform will be used to modify the image colors, moving them into the standard color space, sRGB. Since the sRGB profile will be shipped with all future OS releases from Microsoft and will be freely available for anyone to ship with any OS or application, it is not necessary to embed the profile into the image. However, it is useful to mark the image in some way as being in sRGB. DIB with the v5 header supports this image marking, and we are working with the W3C on other methods of communicating this information over the Web in HTML. Now an application is going to use the image and display it on the screen. Working together, the application and ICM will use the standard color space profile, sRGB, the monitor profile, and the color matching intent to create a transform. This transform will be used to modify the image colors, moving them into the monitor's device-specific color space.
- Since no profile needs to be embedded, and since every image, graphic, or line of text could be using the same profile, the only information that needs to be communicated over the Web is that the image is in a standard color space, and which intent is to be used.