I want to be ale to wor with srgb all the time. So i need to remove any profile while opening, working and saving.
I found out that i need that before saving. If i do it while opening and then saving later on, the file will still have the original profile such as Adobe RGB.
if iFilename <> '' then
begin
imageenview.IO.params.InputICCProfile.LoadFromFile
(EmbeddedDM.helppath + '\sRGB2014.icc');
imageenview.IO.SaveToFile(iFilename);
end;
Now, if i do not have the InputICCProfile comand loaded before i save, it looks like the file on screen still has the original adobe RGB profile loaded. This is what I use when i open a file:
// Load the file
imageenview.IO.LoadFromFile(fPathFilename);
// setup destination color profile
icc := TIEICC.Create();
icc.LoadFromFile(EmbeddedDM.helppath + '\sRGB2014.icc');
imageenview.IO.params.InputICCProfile.LoadFromFile
(EmbeddedDM.helppath + '\sRGB2014.icc');
// setup source color profile (sRGB?)
imageenview.IO.params.InputICCProfile.Assign_sRGBProfile();
// transform
imageenview.IO.params.InputICCProfile.ConvertBitmap(imageenview.IEBitmap,
ie24RGB, icc);
icc.Free();
So how can i be sure that the pixels are indeed with srgb values and not adobeRGB ?
Thanks