hirax.net::inside out::2010年07月01日

最新記事(inside out)へ  |   年と月を指定して記事を読む(クリック!)

2010年6月 を読む << 2010年7月 を読む >> 2010年8月 を読む

2010-07-01[n年前へ]

Excel2003が「カラーパレット」色処理を使っていたことに驚いた。 

 「Excel 2010になっても、エクセルは未だグラフを今ひとつ綺麗に色を仕上げることができない」とつねづね思っていました。そこで、綺麗な配色のグラフをエクセルで使うためのプログラムを書き始めて、とても驚いたことがあります。Excel 2010,2007の動き(また、それらのグラフを旧バージョンで開いたときの動き)をまだ理解することができていないのですが、少なくともExcel 2003までのExcelでは色処理に「カラーパレット」を使っていたのです。それも、他の箇所で異常な色が発生してしまう、といった問題が起きない範囲で使おうとすると、たかだか32色程度の色しか使うことができなく、さらに、もっと安全に使おうと思うなら、たった8色しか使うことができない、という驚くべき仕様です。

 もちろん、自由にRGBで色指定をするコードを書くことができるようには見えるのです。しかし、結局のところ、動作させた結果として表示されるのは、カラーパレットから近似色が選ばれるだけなのです。もしも、そういう動作を好まないのであれば、カラーパレット中の色をRGBで指定した後に、作成した色のインデックスを指定してやらなければならないのですが、さまざまな用途に使われる色がトータルで56色しかない、というなかなかにキツい制限の中で作業を行わなければならないのでした。

 とはいえ、そんな苦労を(しかもC++で)したおかげで、(できる範囲内で)自由な配色のグラフを(たとえば、上に示したチャートのように)エクセルでプログラマブルに作ることができるようになりました。そして、エクセルで作られた、カラー表示ソフトウェアを、その色表示の意味については”眉につばつけて”眺めることができるようになりました。何事も、自分でやってみてわかること、というのが多いように思います。

Excelの色処理が未だに「カラーパレット」を使っていることに驚いた。