Misc technical notes -------------------- Things I'd like to standardise ------------------------------ ICC: Tag for TAC. Should include all combination of colorant summs limits. Should be min and max ? Option for LUT for abitrary limit (similar to gamut LUT). Tag for 3D gamut Hull using triangles. Standard rendering intent encodings, to be used as basis of extra per color component attribute. Backward compatible with current ICC rendering intents ? Use "schemes" too, to allow for future changes. Spectral sub-tag for spectrum encoding. New named color using spectral. New colorant tag using spectral. Other: Add rendering intent plane support to TIFF etc. ICC profile locations in various operating systems. --------------------------------------------------- Someone emailed me about a standard Linux location for ICC profiles, and I decided to research this a little more than has been done in the past, so though others might be interested in the results. > I was wondering if you are aware of any standard location in the Linux > filesystem to put ICC profiles? There was some discussion about this on the OpenICC mailing list a while back: Stefan Klein wrote: > Marti Maria, developer of littlecms (www.littlecms.com), suggested > /usr/share/color/icc and ~/.color/icc as intuitive paths. We decided to > go along with this. Kai-Uwe Behrmann wrote: > I followed the suggestions of using > /usr/share/color for global configuration data and > /usr/share/color/icc for global ICC profiles > ~/.color and ~/.color/icc as user pendant. Googling for "common Linux ICC profile directory" brings up other references. For instance Scribus puts its profiles in /usr/local/share/Scribus/profiles SUN has been implementing CMM's on its Solaris system for a long while (using Kodaks KCMS), and have already established other conventions in its part of the the Unix world: > 1. The current directory > 2. Directories listed by the KCMS_PROFILES environment variable, which is a > colon-separated list of directories > 3. /etc/openwin/devdata/profiles > 4. /usr/openwin/etc/devdata/profiles as well as having extensive support for ICC profiles in Java, on multiple platforms (again using KCMS and the native platform CMM's it seems). SGI has a CMM called Coloratura on their IRIX Unix system, and uses yet another convention: > The Coloratura CMS searches for a file sequentially in the directories specified > by the environment variable CMS_DEFAULT_PATH, which is a colon-separated list of > pathnames similar to that used in the environment variable MANPATH. > The value of CMS_DEFAULT_PATH defined in cms.h is > /var/cms/profiles/local:/var/cms/profiles:., > which allows you to place profiles you prefer in /var/cms/profiles/local, > and generic profiles, which might have the same names, in > /var/cms/profiles or your working directory. Apple in OSX (another Unix based system) chooses /Library/ColorSync/Profile /System/Library/Colorsync/Profiles /Network/Library/ColorSync/Profiles ~/Library/ColorSync/Profiles and individual drivers store relevant profiles in their application resources: eg. /Library/Image Capture/Devices/EPSON SScanner.app/Contents/Resources/ and /Library/Printers/Canon/BJPrinter/PMs/BJC8200PM.plugin/Contents/Resources/ and /Library/Printers/hp/Profiles and many other places. Microsoft Windows chooses: \WINDOWS\SYSTEM\COLOR \WINNT\SYSTEM32\COLOR \WINNT\SYSTEM32\SPOOL\DRIVERS\COLOR depending on the operating system version. Photoshop on MSWindows seems to use its own location: \Program Files\Common Files\Adobe\Color\Profiles Note that Apple ColorSync, Microsoft ICM2.0 and KCMS as implemented by SUN are all existing CMM's with detailed technical documentation available via the web (as examples of how it has been done, and the variety of facilities a CMM may make available.)