Incorrectly-constructed v2 profiles
ICC recommends the use of v4 profiles wherever possible, but recognizes that v2 profiles continue to be used in some workflows and can give good results. Guidelines are given for making v2 profiles that will interoperate well with v4 profiles.Here we identify some of the problems that can be encountered with v2 profiles that have not been correctly constructed according to the v2 specification. Some of these problems can occasionally be seen in v4 profiles.
Element | Error | Consequence |
L* encoding | Non compliance with legacy encoding. Lut16 mft2 cluts should have 65280 (0xFF00h) as the maximum value for L in an AToBx tag, non-compliant profiles encode e.g. 65535 (0xFFFFh) for maximum L*. | Incorrect mapping of L* values, possible overflow |
A2Bx and B2Ax tags | B2Ax tag is not the inverse of corresponding A2Bx tag (within reasonable precision) | Operations requiring inversion, such as proofing and pre-viewing, are inaccurate |
Gamut tag data | 'gamt' tag does not store values for out of gamut colours as described in the specification | CMM cannot determine gamut of media |
Chromatic adaptation | Media white has been chromatically adapted but not primaries | CMM has to compensate for this or results are incorrect |
Black point scaling | Black point scaling applied in A2B1 or B2A1 transforms | CMMs assume no black point scaling, so incorrect mapping of data results |
Version number | Profile v2 version in header is not correct for profile content | CMM may make incorrect assumptions about profile construction |
Version number | Profile is identified as v4 in header, but is not constructed according to v4 spec | CMM may make incorrect assumptions about profile construction |