[Openicc] involving other groups / cairo

Jan-Peter Homann homann at colormanagement.de
Fri May 13 22:05:33 EST 2005


Hello Kai-Uwe, hello list
I think it would be possible to integrate colormanagement into cairo 
with planned small steps, which have a clear goal.
As i understand cairo, it is able to rasterize vector-objects and images 
  to output-devices like a monitor or a bitmap for printing.
currently, cairo only supports the RGB-colorspace.

First we could implement in cairo a meta-informtion for RGB-color. This 
would be a profile, which is valid for the whole "cairo-document".
This is comparable to the output-intent in PDF/X-1a or the working space 
in dtp-applications.
In the second step, we integrate colormanagement in the rasterization to 
the monitor.
This could be done with littleCMS integrated in cairo.
For the printing, the rasterized bitmap is tagged with the cairo-working 
space. If the bitmap is printed via gutenprint, we have clear tagged 
bitmap. The colortransformation from the cairo-workingspace to the 
printing workingspace is done in gutenprint.

With this two steps, cairo would be able to handle different 
RGB-workingspaces with correct rendering to the monitor and to the 
printer via gutenprint.

Next step would be the implementation of the CMYK-colorspace in cairo.
As littleCMS is already implemented for rasterizing to the monitor, we 
can use this infrastructure to render CMYK-data to the monitor and to 
tag CMYK-data for printing with gutenprint.
Even an output-filter for saving the CMYK-cairo document as PDF/X-1a 
would be an easy step.

If we have implemented this functionality in cairo, all developers for 
linux-graphic arts applications could use the built-in colormanagement 
in cairo for rasterizing to the monitor, printing with gutenprint and 
saving PDF/X-1a files.

In all this steps, all elements of an RGB- or CMYK"cairo-document" are 
in a flat-colorspace, which is described by an meta-information.
In the PDF-language, this would be deviceRGB, deviceCMYK and an 
output-intent.

After (!!!) implementing succesfully (!!!) this steps, we can think 
about, how to implement colormanagement for individual objects in cairo.
In the PDF-language, this would be iccbasedRGB or ICCbasedCMYK 
colorspace for individual objects.

Short version of the steps
1. Meta-information for workingspace in cairo
2. Rasterizing to the monitor via littleCMS
3. Rasterizing to the printer with colormanagement in gutenprint
4. Implementing CMYK-colorspace in cairo
5. Implementing PDF/X-1a export in cairo

Handling of profiles:
- Monitor-profile is set on systemlevel
- workingspace-profile is set in the application
(for colormanagement unaware applications, sRGB is automaticly used as 
workingspace)
- printer-profiles are handled in gutenprint

After thism we can go to step 6:
6. Discussion, how to implement colormanagement for individual objects 
in cairo.

Greetings from Berlin
:-) Jan-Peter



Kai-Uwe Behrmann wrote:
> Jan-Peter,
> 
> some time ago I tried to get in a discussion at the cairo list. After some 
> emails my resumee was: discuss and create first a useful CMS and then 
> introduce others to participate.
> 
> While it is possible to include some little things today into projects 
> like cairo, a quick and dirty CMS implementation is not a good advisor for 
> an evolving linux CMS.
> I appreciate the discussions with you, now Chris and all the other 
> interessted people very much, as wellas your proposals.
> The discussions may help to create a CMS API before a try and error game 
> is started much too early.
> People join as they are interessted to contribute to CM.
> 
> We are yet in an early state. Even with Argyll, littleCMS, Scribus, 
> CinePaint and CUPS and the other projects.
> 
> regards
> Kai-Uwe Behrmann
>                                 + development for color management 
>                                 + imaging / panoramas
>                                 + email: ku.b at gmx.de
>                                 + http://www.behrmann.name



-- 
--

homann colormanagement ------ fon/fax +49 30 611 075 18
Jan-Peter Homann ------------- mobile +49 171 54 70 358
Kastanienallee 71 ------- http://www.colormanagement.de
10435 Berlin --------- mailto:homann at colormanagement.de




More information about the openicc mailing list