The content hint constants let your application specify hints about what kind of data is being processed. A CMM can use these hints to better convert the data as your application requests. For instance, these hints may be used to adjust the gamut-mapping technique (the approach used to map the colors falling outside a device's capability to colors that the device can produce).
The "C" API defines the following constants:
KcsContGraphics describes computer-generated color data, which is likely to have large flat regions of highly saturated colors. In graphics data, an attempt is made to maintain the brightness and distinctness of the colors.
icPerceptual = KcsContImage icRelativeColorimetric = KcsContColormetric icSaturation = KcsContGraphics icAbsoluteColorimetric = <no equivalent>
If your application has input color data that matches more than one of these content hints (for example, a complicated page layout), it can specify KcsContUnknown to produce adequate results. For best results, your application may have to divide color data into different parts (for example, separate graphics and images parts). After dividing, your application can process each part separately, applying the appropriate content hint to each part.
If your application specifies KcsContAll as an argument to KcsConnectProfiles(), the resultant profile has the full range of content hints available to it. If it does not, the resultant profile is restricted to the content hints supplied by the function.
CMMs can define additional custom content hints, for example:
To indicate what kind of output is being produced, such as a photograph or a computer-generated graphic.
To indicate that speed is more important than color image quality; therefore, compromised color is acceptable.