Hey, weirdly enough Wolthera's mail didn't get through or something? So maybe me forwarding might work...
---------- Forwarded message ---------- Date: Sat, 22 Aug 2015 12:02:55 +0200 From: Wolthera <griffinval...@gmail.com> To: lcms-user@lists.sourceforge.net Cc: Boudewijn Rempt <b...@valdyas.org> Subject: Trying to make a UI for colorspaces, have some questions. Hi there, I am a Krita developer, and as you know, Krita uses LCMS and has a lot of colorprofiles shipped with it. It confused artists a little, so I set out to make a widget that gives information about a color spaces so people could make a more informed choice, including a cietongue widget I ported from digikam. I got most things working for RGB spaces(including getting the actual whitepoint from V4 type profiles with Elle Stone's help), but I have some questions about the rest. The CIETongue widget I got from digikam is currently not capable of displaying the gamut of CMYK, LAB and XYZ profiles. CMYK is the most important one here. I found the cmsNamedColorInfo function, but the sixth(and seventh) arguments confuse me a little. These are the PCS and Colorant. They are just 16bit integers, and I would expect at the least a triple of intergers to be necessary to give coordinates, especially because cmsAppendNamedColor does request a PCS with 3 indices, but I am not a CS student, so perhaps I am missing some programming trick here. In either case the api reference of cmsNamedColorInfo has pcs listed twice, which is probably a typo. My instinct after that is to just covert the PCS from LAB to XYZ to xyY and draw the points on the xyY diagram and leave the idea of a gamut outline alone because I don't think we'd be able to give any somewhat realistic outline anyway. I am not quite sure what to do with XYZ and LAB in this case. Do you think it's best to just take default points for XYZ and a*/b* and map those, or is there actually something in the lcms functions I can use to help me? I am not quite sure how different XYZ or LAB profiles actually differ. The second part I am mulling over is giving feedback over the Tone Response Curve. Right now the estimated gamma function works pretty well for most TRCs, however, the sRGB, L* and rec 709 trcs all give -1, indicating to me that LCMS has trouble differentiating between them. I could make a curve widget that shows the TRC, but I am not sure what data format the TRC is, and whether it would be wise to chug around the whole TRC to begin with. Perhaps there's some preexisting functionality that allows me to transform a value based on the TRC? What would you think is the best solution for this? Thanks in advance, -- Wolthera ------------------------------------------------------------------------------ _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user