[cairo] Subtractive API, part 0

Jon Cruz jon at joncruz.org
Sat Jan 30 03:59:18 PST 2010

On Jan 30, 2010, at 12:32 PM, ecir hana wrote:

> (Look, at least on my part, this discussion is rather interesting so
> thanks for your patience.)
> I repeatedly said this proposal is not about displaying colors and yet
> you always talk about color management. The proposal does not care
> whether cmyk(0, 1, 2, 3) is rgb(4, 5, 6) or rgb(7, 8, 9). It is about
> saying "cmyk", about the ability to define any cmyk(w, x, y, z) in
> Cairo.

I think this is the crux of the problem/confusion.

You insist that what you want has nothing to do with display. However, it *does* seem to deal with color, since that is the general purpose of Cairo. A color is a sensation of perception. Without enough details to be able to *display* something, it's not really colors you are working with, just random numbers...

... however, since "Cairo is a 2D graphics library with support for multiple output devices" and "Cairo is designed to produce consistent output on all output media" it would seem to be a given that Cairo is for working with colors, and not just random numeric values. Especially since without proper context, Cairo will be unable to perform most of the basic graphical operations that people want.

Color management of *some* sort is required. For many situations, however, the W3C was able to solve the need by simply stating "all RGB values are in the sRGB colorspace". No need for conversions, libraries, etc. A simple change in documentation was sufficient in many areas. If things stay there, then nothing further has to be done. However, if one needs to go in and out of things, then things should be converted in a predictable manner. There are simple ways that Cairo can be updated to handle more than RGB. However, if broken shortcuts are taken, then implementers, maintainers and users of Cairo will have to suffer with any poor decisions for quite some time to come. I'm fairly certain we all just want to find a minimal solution that will be sufficient. But again, I'm pretty sure that "let me throw random numbers in, and I don't care what comes out days or weeks later" is a route that is best to be avoided.

More information about the cairo mailing list