#include "ltkrn.h"
#include "ltclr.h"
L_LTCLR_API L_INT L_InitICCProfile(pICCProfile, uStructSize)
Initializes an ICCPROFILEEXT structure.
Pointer to the ICCPROFILEEXT structure to initialize.
Value that indicates the size of the structure pointed to by pICCProfile. Pass sizeof(ICCPROFILEEXT).
| Value | Meaning |
|---|---|
| SUCCESS | The function was successful. |
| < 1 | An error occurred. Refer to Return Codes. |
The parameter pICCProfile must be allocated before sending it to the function.
An ICCPROFILEEXT structure must be initialized before loading an ICC Profile. To initialize an ICCPROFILEEXT structure, call L_InitICCProfile with the uStructSize parameter set to sizeof(MEMICCPROFILEEXT).
This function should be called before calling L_InitICCHeader. If this function is called after L_InitICCHeader, the default values set by L_InitICCHeader will be lost.
When the ICCPROFILEEXT structure is no longer needed, be sure to free the memory allocated by calling L_FreeICCProfile.
Required DLLs and Libraries
Win32, x64.
This example loads an ICC Profile from an Image, fill the ICC structure with it, and then saves the profile into another image.
L_INT InitICCProfileExample(pICCPROFILEEXT pIccProfile,L_TCHAR * pszImage1,L_TCHAR * pszImage2){L_INT nRet;UNREFERENCED_PARAMETER(pszImage1);UNREFERENCED_PARAMETER(pszImage2);// initializing the ICC profilenRet = L_InitICCProfile (pIccProfile, sizeof(ICCPROFILEEXT));if(nRet != SUCCESS)return nRet;// Load an ICC Profile that is embedded in an imagenRet = L_LoadICCProfile(pszImage1, pIccProfile, NULL);if(nRet != SUCCESS)return nRet;// Fill the ICCPROFILEEXT structure with the ICC data loaded from the imagenRet = L_FillICCProfileStructure(pIccProfile, pIccProfile->pData, pIccProfile->uDataSize);if(nRet != SUCCESS)return nRet;// Save the ICC Profile into another imagenRet = L_SaveICCProfile(pszImage2, pIccProfile, NULL);if (nRet != SUCCESS)return nRet;// finally free the ICC ProfileL_FreeICCProfile(pIccProfile);return SUCCESS;//return nRet;}