``

前頁 メニュー 次頁

    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)で割り当てられた色で画面を塗りつぶす。`