基礎プログラミング I 第 9 回 (Ruby であそぼ / 広告ページの作成) 「色をつけよう」 講義ノート目次

文字に色をつける場合には escape sequence を用いる。 adv_color.rb:


#!/usr/koeki/bin/ruby
#coding:euc-jp

i = 0
while i < 8
printf("%c[%dm 文字の色が変わります \n",0x1b,30+i) i += 1
end j = 0 while j < 8
printf("%c[%d;%dm 背景に色がつきます \n",0x1b,40+j,37-j) j += 1
end printf("%c[%d;%dm 太字に変わります \n",0x1b,0,1)

文字の色は 2 進法で 0b11110 から始まり、赤 Red 、緑 Green 、青 Blue ごとに 0b1, 0b10, 0b100 を割り当てて加えている。また、背景色は 0b101000 から始まる。 二つを同時に変更するときには ; をつける。Esc-[ が文字に効果を与える escape sequence (文字コード 0x1b) である。


0x1b[色番号m文字色か背景の変化
0x1b[背景番号;色番号m背景と文字色の変化
 色番号は 30 番台, 背景は 40 番台

8 色の背景や文字を使ってカラフルなアートに挑戦してみよう。
8 色アートその 1 8 色アートその 2

例えば、書き出すプログラム を参考に、作ってみよう。このプログラムではフォントも書いておいた。