[scribus] Colour Profiles - make colour matching worse!

Hal V. Engel hvengel at astound.net
Mon Jul 27 02:58:31 CEST 2009

On Sunday 26 July 2009 04:45:11 pm John Beardmore wrote:
> Peter Nermander wrote:
> >> Yeh well thats not entirely logical either!  You should be able to
> >>
>  >>output to an industry standard and then tell the printer here's a
>  >>job thats in industry standard format - use the printer specific
>  >>profile built into the printer to output the job adjusted for the
>  >>printer.
> >
> > The above statement makes me think you don't have the slightest idea
> > about the problems with color management.
> >
> > First of all we have the colorspace. The colorspace tells which
> > physical color (usually defined by CIELAB) a certain numerical value
> > (as for example the RGB value of a pixel in a JPEG pictore)
> > corresponds to.
> >
> > So for example a pixel with values RGB 12:34:56 is one color in sRGB,
> > but a completely different color in for example AdobeRGB.
> >
> > Now, CIELAB contains all colors visible by the human eye (as far as I
> > understand it), however other colorspaces contain only a subset. That
> > means that for example the colorspace AdobeRGB contains some colors
> > that CAN NOT be reproduced in the colorspace sRGB. The coverage of a
> > certain colorspaceis called gamut, colors that can not be reproduced
> > are "out of gamut" (and Scribus has support for showing you which
> > colors are out of gamut for the end device, if you have correct
> > profiles).
> >
> > Also RGB and CMYK are totally different. When you tell Scribus to
> > produce a PDF for print, it creates a CMYK PDF. But from what you are
> > writing (that your printer is using its built in profile) I think your
> > printer wants RGB data, so you should create a PDF intended for screen
> > (the only difference is RGB vs CMYK).
> >
> > This page doesn't cover everything, but is has links to further reading.
> > http://en.wikipedia.org/wiki/Color_management
> >
> > Color management is VERY complicated, and you have to make sure you
> > understand which profiles are needed for which translation. I know
> > enough about color management to understand that I shouldn't be using
> > it yet... I need to learn more.
> Same here, but I suppose the frustration is that the documentation of
> most software doesn't make colour handling particularly clear.
> It would seem logical that if CIELAB is a colour space that can describe
> anything the human eye can perceive, that all images be stored
> internally in this format. This then requires a profile that describes
> the conversion of each input devices colour space to CIELAB, and another
> profile for each output space describing the conversion from CIELAB to
> the printer specific output.

This is what the color management engine does although there is no requirement 
that images or anything for that matter be stored in CIELab or any other 
device independent color space.  Profiles can also use CIEXYZ as the Profile 
Conversion Space (PCS) as well as CIELab and the CMS knows how to handle 
conversions between CIELab and CIEXYZ so that it can handle conversions that 
involve either or both PCS types.

> For PDFs which are frequently multi use things, it would presumably be
> sensible to keep images in the CIELAB format then use profiles for each
> VDU, CRT, LCD and mobile phone used to view them, or each windows or
> press printer that might be used to put them on paper.

In fact the PDF specification calls for support for various color spaces 
including what the spec calls CIE Based color spaces.  One of these is CIELab  
but this also includes objects where the color space is specified by an ICC 
profile.  In addition the spec allows for what it calls CalRGB, CalCMYK and 
CalGray color spaces which are basically specified by a combination of an XYZ 
white point and some gamma curves (actually a gamma curve formulas) and the 
XYZ values of the primaries.  Internally when a PDF is sent to a device for 
display/printing the PDF spec calls for everything not in the device color 
space to be converted from what ever color space the individual objects are in 
to CIEXYZ and then from CIEXYZ to the output device color space.   It does not 
really make sense  to store everything in the PDF in CIELab since the 
specification calls for everything to be converted to CIEXYZ as an 
intermediate step and as long as all of the objects in the PDF have well 
specified color spaces then the conversion process is unambiguous.  As a side 
note anything in a "device" color space is in fact not well defined in most 
cases and this is were many issues pop up. 

> In the absence of such clear and well defined data flow, 

As you can see from the above the color data flow is well defined and very 
clear but is also complex.  But I think what you were trying to say is that 
this is not clear to users.  Which leads to

> the mumblings
> about the complexity of CMS seem to contribute to a small of bad design.
> Is CMS something that needs to be complex, or just something that's got
> complex because of the lack of standard methods and clear description /
> specification ?

The CMS needs to be complex.  It is the nature of the beast.  The ICC 
specifications are clear and are based on science dating from the 1920's and 
1930's dealing with human perception of color.  This by it's nature is complex 
because it actually deals with how the human mind works.  

It should be possible to hide at least some of this complexity from users.  
The real issue is that at present users are forced to deal with at least some 
of this complexity and app and OS vendors/developers have not done a good job 
of shielding users from it.  In fairness this is difficult because of the 
complexity and because many subsystems are involved in the process.  OS/X is 
probably the best at hiding this complexity but it still has issues in this 
regard.  Windows is only slightly better than Linux and other unix variants in 
this area and both are far behind OS/X with respect to user accessibility.  
There is lots of work being done on the *nix side to help with this issue 
(there are a number of GSoC projects currently underway for example) but it 
will likely be a while before a significant amount of this effort filters down 
to end users.

> In some ways it would be great to get into CMS and have everything come
> out as it should all the time, but for many, the pragmatic approach is
> to tweak curves a bit in gimp taking account of your experience with the
> target printer.

Well actually the correct approach is to understand and correctly use the CMS.  
It is very powerful and if you understand how it works and how to correctly 
set things up it will have a very positive impact on the quality and 
consistency of your work as well as actually streamlining your work flow.  
Having said that it takes a lot of up front effort to do this which makes 
getting past the learning curve a difficult task for many users. 

> I can't help thinking that CMS is an area that needs a good sort out,
> not so much in Scribus, but industry wide.
> Cheers, J/.

More information about the scribus mailing list