[metapost] defaultcolormodel

Reinhard Kotucha reinhard.kotucha at web.de
Fri Jul 8 23:24:03 CEST 2011

On 2011-07-08 at 13:16:07 +0200, luigi scarso wrote:

 > Conversion between color spaces needs a color profile.
 > For example (0,0,0) -> (0,0,0,1) not always is the best choice.

Yes and no.  We have to agree on what is white.  In nature it depends
on the (color) temperature.  A light bulb has a lower color
temperature than the sun.  If you want to compose "white" from red,
green, and blue light sources, you have to agree on a particular white
point.  And indeed, European and American color TV systems have
slightly different white points, though you probably don't notice the
difference in practice.

Black, however, is well defined.  It's what you see if you are in a
closed room and turn the light off.  This and the fact that color
pigments used in black ink (inexpensive carbon) are nearly ideal, make
RGB(0,0,0) -> CMYK(0,0,0,1) a very good choice.  You don't see a
difference between CMYK(0,0,0,1) and CMYK(1,1,1,1) though with the
latter you waste a lot of ink.

In LaTeX's color package, black is already CMYK(0,0,0,1), and this is
also a good choice for Metapost.  Please note that with CMYK(1,1,1,1)
you don't not only waste ink, the paper also gets too wet.

 > Generally a rgb color space is the a good choice: practically many
 > monitors and cameras (hence jpeg) have the same gamut (ie, the same
 > color profile) and it is one of the wider color space also ---
 > i.e. one can assume that a rgb color is a real color

All devices except printers and maybe nowadays 'electronic paper' are
using an additive color model.  Hence, RGB wouldn't be a bad choice.
But the gammuts are not necessarily the same.  There might be still
differences on what is red, green, or blue.  Sensors might have their
maximum sensitivity at different wavelengths.  You'll see this if you
compare red LEDs from different manufacturers, for instance.

A better approach is to use a standardized color model and put the
calibration data (color profiles) into the devices.  But then
manufacturers have to agree on a standardized color model, which is
unlikely to happen.

 > A cmyk is often a virtual color: you need the profile of the medium
 > (usually the paper) .  And the profiles *differ* each other.

CMYK is more difficult because of the different gammut and different
white points.  There are also problems with with non-ideal inks
(CMYK(1,1,1,0) isn't black).  However, when talking about black, we
can assume that black ink is ideal and no color profile is needed.

With that said, I think it's absolutely correct if Metapost converts
RGB(0,0,0) to CMYK(0,0,0,1).  Everything but black is much more
complicated, though.


Reinhard Kotucha                                      Phone: +49-511-3373112
Marschnerstr. 25
D-30167 Hannover                              mailto:reinhard.kotucha at web.de
Microsoft isn't the answer. Microsoft is the question, and the answer is NO.

More information about the metapost mailing list