I did an experiment on the different color models available in xcolor together with the predefined colors. I observe that the colors vary alot depending on the color model. WHY?
- Why does the colors vary so much depending on the color model for the
predefined colors? - How are the default values chosen? To they follow a specific color model?
- What color model should I choose?
- Why is Cyan in cmyk blue?
- Which color model is best for printing?
In the code example below the default colors are displayed in the second column.
\documentclass{standalone}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tikz}
\begin{document}
\huge
\begin{tikzpicture}
% \selectcolormodel{default}
\node at (0,0){
\begin{tikzpicture}
\input{colordata}
\node at (7.5,1.5) {\textbf{default}};
\end{tikzpicture}
};
\selectcolormodel{cmyk}
\node at (15,0.035){
\begin{tikzpicture}
\input{colordata}
\node at (7.5,1.5) {\textbf{cmyk}};
\end{tikzpicture}
};
\selectcolormodel{cmy}
\node at (30,-0.01){
\begin{tikzpicture}
\input{colordata}
\node at (7.5,1.5) {\textbf{cmy}};
\end{tikzpicture}
};
\selectcolormodel{rgb}
\node at (-15,0.035){
\begin{tikzpicture}
\input{colordata}
\node at (7.5,1.5) {\textbf{rgb}};
\end{tikzpicture}
};
\end{tikzpicture}
\end{document}
% first part of colordata.tex
% \filldraw[color = red] (0,-0) rectangle (15,-0+1); \node at (7.5,-0+0.5) {red };
% \filldraw[color = green] (0,-1) rectangle (15,-1+1); \node at (7.5,-1+0.5) {green };
% \filldraw[color = blue] (0,-2) rectangle (15,-2+1); \node at (7.5,-2+0.5) {blue };
% \filldraw[color = cyan] (0,-3) rectangle (15,-3+1); \node at (7.5,-3+0.5) {cyan };
% \filldraw[color = magenta] (0,-4) rectangle (15,-4+1); \node at (7.5,-4+0.5) {magenta };
% \filldraw[color = yellow] (0,-5) rectangle (15,-5+1); \node at (7.5,-5+0.5) {yellow };
% \filldraw[color = black] (0,-6) rectangle (15,-6+1); \node at (7.5,-6+0.5) {black };
% \filldraw[color = white] (0,-7) rectangle (15,-7+1); \node at (7.5,-7+0.5) {white };
% \filldraw[color = gray] (0,-8) rectangle (15,-8+1); \node at (7.5,-8+0.5) {gray };
% \filldraw[color = white] (0,-9) rectangle (15,-9+1); \node at (7.5,-9+0.5) {white };
% \filldraw[color = darkgray] (0,-10) rectangle (15,-10+1); \node at (7.5,-10+0.5) {darkgray };
% \filldraw[color = lightgray] (0,-11) rectangle (15,-11+1); \node at (7.5,-11+0.5) {lightgray };
% \filldraw[color = brown] (0,-12) rectangle (15,-12+1); \node at (7.5,-12+0.5) {brown };
% \filldraw[color = lime] (0,-13) rectangle (15,-13+1); \node at (7.5,-13+0.5) {lime };
% \filldraw[color = olive] (0,-14) rectangle (15,-14+1); \node at (7.5,-14+0.5) {olive };
% \filldraw[color = orange] (0,-15) rectangle (15,-15+1); \node at (7.5,-15+0.5) {orange };
% \filldraw[color = pink] (0,-16) rectangle (15,-16+1); \node at (7.5,-16+0.5) {pink };
% \filldraw[color = purple] (0,-17) rectangle (15,-17+1); \node at (7.5,-17+0.5) {purple };
% \filldraw[color = teal] (0,-18) rectangle (15,-18+1); \node at (7.5,-18+0.5) {teal };
% \filldraw[color = violet] (0,-19) rectangle (15,-19+1); \node at (7.5,-19+0.5) {violet };
% \filldraw[color = Apricot] (0,-20) rectangle (15,-20+1); \node at (7.5,-20+0.5) {Apricot };
% \filldraw[color = Aquamarine] (0,-21) rectangle (15,-21+1); \node at (7.5,-21+0.5) {Aquamarine };
Best Answer
I did not intend to write a comprehensive analysis but give some hint to your subproblems.
We all agree that by
red
we mean the reddest color in the current space. (Intuitively there must be something representing that color, either namedred
orreddest
.) But the fact is that, even the phrase reddest is well-defined, the reddest color varies from space to space. Some color spacess, for instance the Lab-family, do not contain the reddest but in which the red could be as red as you wish.Some color spaces are called absolute for their colors being unambiguous. For example when saying
#FF0000
in AdobeRGB, I am indicating that red , a color stimulating people's optic nerves in that way.For an absolute color space, colors are chosen by the agency developing that space. For a non-absolute color space you need to associate it to an absolute one, since then the colors are determined.
Depends on what are you doing. Different models are developed for different purpose. The roughest list is
Well it is blue as an adjective but not
blue
in RGB.cyan
(CMYK) is a color that seems like betweenyellow
(RGB) andblue
(RGB). Andcyan
(RGB) is defined as#00FFFF
(RGB)CMYKPantoneNowadays computers/printers are smart enough to translate between color spaces. All you need to do is to choose a color from an space and declare the color-space pair.
The only problem is that your screen/printer may not be able to display/print the absolute color properly. This is a hardware issue and color models cannot help.