前頁  メニュー  次頁


color mode

色を指定するのに,パレットを用いずに,色を表す24ビットの整数を直接用いるモードを用意した。パレットの個数の制約がなくなり,ASK PIXEL ARRAY および ASK PIXEL VALUEですべての色を取得できるようになる。JISとの相違は,SET COLOR MIXが無効となることのみ。

 SET COLOR MODE 文字列式
    文字列式の値は"NATIVE","REGULAR"のいずれか。
    文字列値が"REGULAR"であると,パレットを用いる通常モード。
    文字列値が"NATIVE"のとき,色指標として下位8ビットが赤,中位8ビットが緑,上位8ビットが青の強度を意味する24ビットの整数を用いるモードに移行する。
    利用できる色指標の最大値は16777215。
    SET COLOR MIXを実行すると,続行可能な例外となる。
    モード切り替え時,画面を消去しない。
    color modeをnativeに切り換えるとき,背景色(clear文が使う色),line color,point color,area color, text colorを引き継ぐ。
    逆に,color modeをregularに切り替えると,line color,point color,area color,text colorは 1 に設定される。

色指標を得る関数
COLORINDEX(r,g,b)
r,g,bは数値式
r,g,bに,0以上1以下の数値で,赤,緑,青の強度を指定する。
結果は,指定した色の色指標。
color modeがREGULARのとき,指定された色がパレットにないと,-1。


例  青字で"Hello"を描く
10 SET COLOR MODE "NATIVE"
20 SET TEXT COLOR ColorIndex(0,0,1) 
30 PLOT TEXT ,AT 0,0:"Hello"   
40 END
(参考)色を16進数で指定したいときは,BVAL関数を用いる。
  たとえば,青は,BVAL("FF0000",16)。

(注意)色を指定する整数のバイト構成が,HTMLと逆。
HTMLでは上位バイトからRGBの順に指定するが,Windowsでは下位バイトからRGBの順。

<補足>
 CLEAR文は,モード切替え前にSET COLOR MIX(0)で割り当てられた色で画面を塗りつぶす。