<html><head>
    <style>
        td { 
            font-size: 12px;
            font-family: monospace;
            text-align: center;
            padding-left: 3px;
            padding-right: 3px
        }
        td.bright { color: #eee; }
        td.dark   { color: #222; }
    </style>
</head>
<body>
    <table>
<?
# we create a 9x9 table selecting a different background for each cell

for {set i 0} { $i < 9 } {incr i} {
    puts "<tr>"
    for {set j 0} {$j < 9} {incr j} {

        set r [expr int(255 * ($i + $j) / 16)] 
        set g [expr int(255 * (8 + $j - $i) / 16)]
        set b [expr int(255 * (abs (4 - $i) + abs(4 - $j)) / 8)]

# determining the background luminosity (YIQ space of NTSC) and choosing
# the foreground color accordingly in order maintain maximum contrast

        if { [expr ($r*0.29894)+($g*0.58704)+($b*0.11402)] > 148.0} {
            set cssclass "dark"
        } else {
            set cssclass "bright"
        }

        set cell [format "%3d %3d %3d" $r $g $b]

        puts [format \
            "<td bgcolor=\"%02x%02x%02x\" class=\"%s\">%s</td>" \
                                            $r $g $b $cssclass $cell]
    }
    puts "</tr>"
}
?>
    </table>
</body></html>
