ImageEn, unit iexBitmaps

TIEICC.Transform

TIEICC.Transform


Declaration

function Transform(Destination: TIEICC; InputFormat: integer; OutputFormat: integer; Intent: integer; Flags: integer; InputBuffer: pointer; OutputBuffer: pointer; ImageWidth: integer): boolean;


Description

Transforms a row from current profile to the destination profile. You must call FreeTransform after the whole image has been transformed.
Returns False if it cannot perform the transformation.
InputFormat and OutputFormat : The color format for the input and the output. See below for a list of supported color formats.
Intent: The ICC intent to apply. If an appropiate tag for this intent is not found, no error is raised and the intent is reverted to perceptual.
              INTENT_PERCEPTUAL
              INTENT_RELATIVE_COLORIMETRIC
              INTENT_SATURATION
              INTENT_ABSOLUTE_COLORIMETRIC
Flags: This value commands on how to handle the whole process. Some or none of this values can be joined via the 'or' operator.
cmsFLAGS_MATRIXINPUT CLUT ignored on input profile, matrix-shaper used instead (for speed, and debugging purposes)
cmsFLAGS_MATRIXOUTPUT Same as anterior, but for output profile only
cmsFLAGS_NOTPRECALC By default, lcms smelt luts into a device-link CLUT. This speedup whole transform greatly. If you don't wanna this, and wish every value to be translated to PCS and back to output space, include this flag
cmsFLAGS_NULLTRANFORM Don't transform anyway, only apply pack/unpack routines (usefull to deactivate color correction but keep formatting capabilities)
cmsFLAGS_HIGHRESPRECALC Use 48 points instead of 33 for device-link CLUT precalculation. Not needed but for the most extreme cases of mismatch of "impedance" between profiles
cmsFLAGS_LOWRESPRECALC Use lower resolution table. Useful when memory is a preciated resource
cmsFLAGS_BLACKPOINTCOMPENSATION Use BPC algorithm


See Also

 TIEICC Supported Color Formats