Re: Color Visibility

Here's my thoughts on how to choose colors for the web survey on
readability of color combinations.

Short version: 

Look at http://astro.temple.edu/~kasday/color/colortable.html  
which also has the text that appears below.

Or if you're really in a rush, skip to the pictures at 
http://astro.temple.edu/~kasday/color/colortable.html#tables

----------------

Long version:

Computers these days can display millions of colors so we obviously can't
test them all.  For starters, lets limit ourselves to "Netscape Safe" (NS)
colors.  We need because for  8 bit displays; colors other than the NS
colors get rounded off to a NS color, or dithered, i.e. displayed as a
bunch of NS color dots that average to the requested color.(see e.g.
http://www.connect.hawaii.com/hc/webmasters/Netscape.colors.html). 

NS colors are constructed by limiting R,G, and B to 0, 51, 102, 153, 204,
255, i.e. N*51, where N = 1,2,3,4,5, which in hex is 00, 33, 66, 99, CC, FF.

These are evenly spaced which is convenient for programmers.
Unfortunately, the resulting colors are not evenly spaced perceptually; and
furthermore the spacing depends on whether you're on a Mac, PC, Unix, your
video card, your type of display, and, for LCD displays, the angle at which
you're viewing the display (a big source of frustration for graphics
artists... and human factors folks).

This still leaves us with 216 colors, or 216*216=46656, which is still too
many to try.  Lets whittle it down some more.

It's convenient to arrange colors into a "color space" (cf
http://www.munsell.com/muntree.htm), with

- brightness (dark vs. light) mapped to the vertical axis
- hue (red, blue, green, etc.) mapped to angle around the vertical axis
- saturation (pale or dull vs. vivid or strong)  mapped to outward distance
from the vertical axis 

In this color space, the colors you can get on a computer display fill a
volume shaped something an egg resting wide side down on a table
(actually, the blue part is drooping). 
- So if you look at a vertical line going up through the center of the egg,
starting from the bottom and going to the top, you get the colors black,
dark grey, grey, light grey, white at the top.  
-Around the equator (or waist) of the egg there's a circle of saturated
(vivid, strong) rainbow colors  cyan, green, yellow, orange, red, magenta,
blue
- As you go up the surface of the egg from the equator the colors get
brighter but paler, i.e. less saturated..
- As you go down the surface of the egg the colors get darker and duller

I think our test should just use the colors on the surface and the colors
on the centerline, because:

1. We can calculate the results for the colors inside the egg by
interpolation (as explained later).
2. Those are the colors that seem to be used on the web, at least nowadays.
 Perhaps because colors inside the solid tend to be less bright and vivid,
i.e. less fun, and web pages need to be fun pages (grin). 

I have a set of colors shown at
http://astro.temple.edu/~kasday/color/colortable.html  It shows each color
and it's RGB value, and all combinations of text on background.

It has white, grey and black at the center, and the hues circling around
them, going from top to bottom of color egg.

Once we find out what people think are reasonable, can interpolate as follows:

Given two colors A , B

draw horizontal line from A to centerline.  Intersection is color A1.
extend line outward to intersect surface.  Call that A2
Similarly calculate B1, B2

Estimated score for visibility of text A on background B, written as A->B,
is average of visibility of 
A1->B1, A1->B2, A2->B1, A2->B2


There are still a lot of color combinations, viz  25*25 =  625, which is
still a lot better than all 46656 combinations of NS colors.  But we
probably want to weed out the ones that are obviously bad.



-------
Leonard R. Kasday, Ph.D.
Universal Design Engineer, Institute on Disabilities/UAP, and
Adjunct Professor, Electrical Engineering
Temple University

Ritter Hall Annex, Room 423, Philadelphia, PA 19122
kasday@acm.org        
(215} 204-2247 (voice)
(800) 750-7428 (TTY)

Received on Wednesday, 19 May 1999 11:26:43 UTC