On Saturday 15 January 2005 05:37 pm, Sven Neumann wrote:
> Let's try to implement this in small steps then. As a first step I
> would like to add a couple of options to the preferences to allow
> users to define default locations for color profiles, to
> enable/disable color management and to set a number of default
> settings. Stefan Döhla sent me a patch last year that implements this
> and I will probably base the changes on that. The settings he
> suggested are:
> - use CM or not
> - display profile
> - default workspace profile
> - default rendering intent for color conversion
> + from workspace to display (default set in display profile)
> + from workspace to printer (should default to
> * perceptual for pictures
> * relative colorimetric for most other work)
> - default cmyk-profile (is later used to convert RGB->CMYK)
> - default profile path (/usr/share/color/icc/ and ~/.color/icc/)
> As soon as we have such settings, we need to figure out a way to make
> them available to plug-ins and modules. We also need an API to access
> the color-profile attached to an image.
Sorry for such a long note.
I have been playing around with the 2.3.2 snap shot and it looks like much of
the above is working. It also gave me some ideas about what needs to be done
and also how the menus for this could be structured.
I thought that perhaps some of this is allready underway and in CVS. So I got
a copy of CVS and tested it. I did not see any noticeable changes.
Things that need to be implemented:
1. Currently embedded profiles are not used. This needs to be implemented.
The gimp-color-management plug-in (by Jordi Canton
<[EMAIL PROTECTED]>) looks like it has the code needed to read in
an embedded profile and could be leveraged to get this functionality.
Highest priority of any CM work.
2. Default Profile Paths need to be implemented. This should be user
modifiable. On open source systems it should be set to
~/.color/icc:/usr/share/color/icc by default and the user should only be able
to add additional locations to this path (not sure about the last part). On
open source systems The GIMP installation should create these directories if
they do not exist (? not sure about this). On closed source systems the
system default locations should be used. On Windows XP this would normally
be C:\windows\system32\spool\drivers\color. I don't know what it is on a
Mac. Medium to low priority.
3. Menu items to assign profiles to images and to convert images between color
spaces needs to be implemented. There is already a plug-in available that
sort of does this (gimp-color-manager). It is on the rough side and has a
more complex UI than is really needed and the UI confusing. This either
needs to be simplified and cleaned up or just used to pull out needed
functionality for implementing a cleaner UI. High priority.
4. Some (image acquisition) plug-ins will need a way to pass profile
information into GIMP. For example UFRAW (recommended) is a RAW conversion
utility that runs both stand alone and as a GIMP plug-in. It is CM aware
and it can embed user specified profiles and optionally convert images from
that device profile to a working space profile. In standalone mode it can
save the image file with an embedded profile. Currently it has no way to
pass the profile information to GIMP when running as a plug-in. Medium
Here is a proposal for how the color management related menus could be
structured. It leverages what is allready there but tries to make the intent
of each item clearer and easier to understand if possible. It also implies
certain functionality that needs to be implemented.
Global CM configuration menus located in:
File ==> Preferences ==> Color Management
Color Management on (check box)
(global flag to turn CM on or off. Default is off.
If off all CM options, global or image specific, have no affect.
This is currently missing.)
Profiles Path dialog (see #2 above)
Display (This could also be located in File ==> Preferences ==> Display)
Try to obtain the monitor profile from the X server (check box)
Monitor profile (drop down use profile path to get list of profiles)
Rendering Intent (drop down)
Desaturate monitor colors by ??? % (new - low priority)
(This does not need the current Mode of operation drop down.
see Color Management on item above and Print Simulation
Color Management Policies
Working Color Spaces
(These are the RGB and CMYK profiles
in the current GIMP preferences menu)
RGB (drop down use profile path to get list)
CMYK (drop down use profile path to get list)
Grey (drop down use profile path to get list) (new)
ask or always convert to working space (radio button)
ask or always convert to destination color space (radio
Missing Profiles ask when opening (check box)
Default (Global?) Conversion Options
Rendering Intent (drop down)
Use Black Point Comp (check box)
Use dithering on 8 bit/ch images (check box) (new - low
Image specific CM menu items (located in the Image and View menus):
Image ==> Mode
(current plug-in, see #3 above, uses
Filters ==> Colors ==> Apply ICC Profile
Using Image ==> Mode would make this exactly like that
other image editor)
Assign Profile ==> dialog (use profile path to get list)
Convert to Profile ==> dialog (use profile path to get list)
View ==> Print Simulation (or SoftProof or Proof Setup?)
(currently is located in View ==> Display Filters which is confusing)
Simulation (SoftProof or Proof?) Mode on or off (radio button or check
Printer Profile (drop down use profile path to get list)
Rendering Intent (drop down)
Black Point comp (check box)
Use Paper White (check box) (new - low priority)
Use Ink Black (check box) (new - low priority)
It would be great if it were possible to somehow make the Print Simulation
settings for an image persitant so that it did not have to be reset every
time an image was opened. I don't know of any tools that currently do this
(Photoshop does not) so I don't know if it is feasible. PhotoShop allows
users to save a named SoftProof configuration that is then available in the
View ==> Proof Setup menu. Low priority.
Printer CM stuff belongs in the gimp-print (guten-print) plug-in and I will
save my thoughts about how that should be structured for later.
Just wanted to add that what is there now, with in its limits, is a big step
forward and works well. Good job everyone. Now it needs to be kicked up to
the next level.
Gimp-developer mailing list