Index |
 |
HOME >
プログラムTOP >
資料集 |
|
RGB値とWebSafeColor
●RGB値とは?

プログラムでもHTMLで色を表現する時もRGB値を使います。そして、表現方法としては、"F53C29"というように16進数の値で表現することが多いと思います。始めて見た時はこれがどんな色なのか見当も付きません。しかし原理そのものはきわめて簡単なものです。 コンピュータの扱う単位に「バイト」というものがあります。1バイトは8ビットからなり、1ビットはオフとオン、すなわち"0"と"1"を表現することができます。よって、1バイトが表す数値は2の8乗、イコール256種類となるわけです。最初の数字を0と解釈すれば最大値は255となります。これを16進数値に直すと、00〜FFということになります。 一方、すべての色は、三原色、すなわち、R(Red : 赤)、G(Green : 緑)、B(Blue : 青)の三つの色の組み合わせで表現することができます。この原色ごとに1バイトづつわりあてると計3バイトになり、これがRGB値というわけです。それぞれの値は、小さいほど暗く、大きいほど明るくなります。ついでに、RGBすべてが0だと黒、すべてがFF(255)だと白になります。私が最初混乱したのはこのRGB値を、"10+20+30=60"というように足し算と考えてしまったためです。RGB値は、単純にRGBの値を、二桁づつの値を順に並べただけのものなのです。 例えば、先ほどの"F53C29"は、R=F5(245) G=3C(60) B=29(41)というように簡単に分解して解釈することができます。この色は何となく「明るい赤が強い色だなあ」と分かります。ちなみに、ARGB値というものもあります。これも、RGB値にA(アルファ値 : 透明度を表す)を足しただけのものです。
●WebSafeColor
異なったOSでもほぼ同じ色を実現できるのが、WebSafeColor216色です。ただし、フルカラー以外の設定や環境では微妙に異なることがあるようです。16進数を表す方法は、言語によって違うので注意が必要です。C、C++では頭に"0x"、VBでは"&H"、HTMLでは"#"をつける必要があります。(ex : 0xff0000(赤), &H00ff00(緑)、#0000ff(青))
| 000000 |
003300 |
006600 |
009900 |
00cc00 |
00ff00 |
| 000033 |
003333 |
006633 |
009933 |
00cc33 |
00ff33 |
| 000066 |
003366 |
006666 |
009966 |
00cc66 |
00ff66 |
| 000099 |
003399 |
006699 |
009999 |
00cc99 |
00ff99 |
| 0000cc |
0033cc |
0066cc |
0099cc |
00cccc |
00ffcc |
| 0000ff |
0033ff |
0066ff |
0099ff |
00ccff |
00ffff |
| 330000 |
333300 |
336600 |
339900 |
33cc00 |
33ff00 |
| 330033 |
333333 |
336633 |
339933 |
33cc33 |
33ff33 |
| 330066 |
333366 |
336666 |
339966 |
33cc66 |
33ff66 |
| 330099 |
333399 |
336699 |
339999 |
33cc99 |
33ff99 |
| 3300cc |
3333cc |
3366cc |
3399cc |
33cccc |
33ffcc |
| 3300ff |
3333ff |
3366ff |
3399ff |
33ccff |
33ffff |
| 660000 |
663300 |
666600 |
669900 |
66cc00 |
66ff00 |
| 660033 |
663333 |
666633 |
669933 |
66cc33 |
66ff33 |
| 660066 |
663366 |
666666 |
669966 |
66cc66 |
66ff66 |
| 660099 |
663399 |
666699 |
669999 |
66cc99 |
66ff99 |
| 6600cc |
6633cc |
6666cc |
6699cc |
66cccc |
66ffcc |
| 6600ff |
6633ff |
6666ff |
6699ff |
66ccff |
66ffff |
| 990000 |
993300 |
996600 |
999900 |
99cc00 |
99ff00 |
| 990033 |
993333 |
996633 |
999933 |
99cc33 |
99ff33 |
| 990066 |
993366 |
996666 |
999966 |
99cc66 |
99ff66 |
| 990099 |
993399 |
996699 |
999999 |
99cc99 |
99ff99 |
| 9900cc |
9933cc |
9966cc |
9999cc |
99cccc |
99ffcc |
| 9900ff |
9933ff |
9966ff |
9999ff |
99ccff |
99ffff |
| cc0000 |
cc3300 |
cc6600 |
cc9900 |
cccc00 |
ccff00 |
| cc0033 |
cc3333 |
cc6633 |
cc9933 |
cccc33 |
ccff33 |
| cc0066 |
cc3366 |
cc6666 |
cc9966 |
cccc66 |
ccff66 |
| cc0099 |
cc3399 |
cc6699 |
cc9999 |
cccc99 |
ccff99 |
| cc00cc |
cc33cc |
cc66cc |
cc99cc |
cccccc |
ccffcc |
| cc00ff |
cc33ff |
cc66ff |
cc99ff |
ccccff |
ccffff |
| ff0000 |
ff3300 |
ff6600 |
ff9900 |
ffcc00 |
ffff00 |
| ff0033 |
ff3333 |
ff6633 |
ff9933 |
ffcc33 |
ffff33 |
| ff0066 |
ff3366 |
ff6666 |
ff9966 |
ffcc66 |
ffff66 |
| ff0099 |
ff3399 |
ff6699 |
ff9999 |
ffcc99 |
ffff99 |
| ff00cc |
ff33cc |
ff66cc |
ff99cc |
ffcccc |
ffffcc |
| ff00ff |
ff33ff |
ff66ff |
ff99ff |
ffccff |
ffffff |
|
www.sasaraan.net |
(c) morijoh |