2003-02-19 [水]
_ cssでの色指定
css(カスケードスタイルシート)とは、まあ、HTMLのレイアウト設定のファイルのことです。現在、3つのページを運営していますが、見てわかるようにデザインが同じで色だけ変えているのです。
Yayaportは赤、Yaya Cityは緑、Yaya a gogo!!は青、というように、ちょうど3原色を使っています。これ、3つとも色を指定しなおすのは大変な作業になるので、どれか1つスタイルシートを作り、RGBの値を入れ替えることで残り2つのスタイルシートを作っているのです。
#RRGGBB → #BBRRGG → #GGBBRR // このような感じに入れ替える
ちなみにこの処理をPerlで書くと
#!/usr/local/bin/perl
my(@css) = <>;
for (1..2){
open (OUT, "> color$_.css");
foreach (@css){
s/\#([a-fA-F\d]{2})([a-fA-F\d]{2})([a-fA-F\d]{2})/\#$2$3$1/ig;
}
print OUT @css;
close OUT;
}
こんな感じで、color1.css、color2.cssが出来上がります。
ここで問題がひとつ。ただ値を入れ替えただけでは困るのです。青や赤に比べ、緑は明るい色なので、特にYaya Cityはちょっとまぶしい色になってしまうのです。これをどうにかしたいと思い、明るさを保ったままの変換をやろうと試行錯誤していたのですが・・・うーん、よくわかりませんです・・・。明るさということで輝度Yを求める以下の式からいろいろ試しているんですが。
Y = 0.3R + 0.59G + 0.11B
というわけで、誰かわかる人、ご教授願いますm(_ _)m
hermes taschen zum ausdrucken たわごと(2003-02-19)