Conversion Given an ICM Profile (Delphi 4.0)

  1. Define the following global variables:

    ClrHandle : THandle; 
    params : CONVERSION_PARAMS; 
    RGBColor : array[0..2] of UCHAR; 
    ColorSpace : array[0..3] of UCHAR; 

  2. Set the conversion options by filling a CONVERSION_PARAMS structure:

    ZeroMemory(Pointer(@params), SizeOf(CONVERSION_PARAMS)); 
    params.uStructSize := SizeOf(CONVERSION_PARAMS); 
    params.nMethod := USE_CUSTOM_ICC; 
    params.nActiveMethod := USE_CUSTOM_ICC; 
    New(params.pWpoint); 
    params.pWpoint.nWhitePoint := CIELAB_D50; 
    StrCopy (params.sInputProfile, "C:\MyCMYKProfile.ICM"); 
    StrCopy (params.sOutputProfile, "C:\MyRGBProfile.ICM"); 
    params.pMemInputProfile := nil; 
    params.pMemOutputProfile := nil; 

  3. Initialize the color conversion handle with L_ClrInit():

    L_ClrInit(@ClrHandle, CCS_CMYK, CCS_RGB, @params); 

  4. Now, do the conversion:

    ColorSpace[0] := 100; 
    ColorSpace[1] := 100; 
    ColorSpace[2] := 100; 
    ColorSpace[3] := 100; 
    L_ClrConvert(ClrHandle, Pointer(ColorSpace), Pointer(RGBColor), 1, 1, 0, 0); 

  5. At the end, free the color conversion handle:

    L_ClrFree(ClrHandle); 

Help Version 20.0.2020.4.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Color Conversion C API Help