2003-02-20 [木]
_ 健康診断
就職先の会社での健康診断を受けてきました。血を抜かれたのはいつぶりだろう・・・
_ 続・cssでの色指定
さて、輝度を保ったままの変換ですが、とりあえずそれっぽくできました。
#!/usr/local/bin/perl
my(@css) = <>;
foreach (@css){
s/\#([a-fA-F\d]{2})([a-fA-F\d]{2})([a-fA-F\d]{2})/"\#".&Change($1,$2,$3)/eig;
}
open (OUT, "> color.css");
print OUT @css;
close OUT;
sub Change{
my ($r,$g,$b);
foreach (($r,$g,$b) = @_){ $_ = hex; }
my ($y) = &Y($r,$g,$b);
($r,$g,$b) = ($g,$b,$r); # RGB値の入れ替え
# ($r,$g,$b) = ($b,$r,$g); # こちらに変えるともう一つの入れ替え
$y -= &Y($r,$g,$b);
foreach (($r,$g,$b)){
$_ += int($y);
($_ < 0) ? ($_ = 0) : (($_ > 0xff) && ($_ = 0xff));
}
return sprintf("%02x%02x%02x",$r,$g,$b);
}
sub Y{ # 輝度の計算(Y = 0.3R + 0.59G + 0.11B)
return 0.3 * @_[0] + 0.59 * @_[1] + 0.11 * @_[2];
}
やっていることを簡単に言えば、RGB入れ替え前の輝度Yと、入れ替え後の輝度との差を計算し、R,G,B値に加算しているだけです。RGBが0以下になったときは0、255以上になったときは255にしているので、厳密に言えば輝度が保たれないところもありますが・・・
とりあえずYaya a gogo!!の青色を基準にして、Yaya CityとYayaportの色を作りなおしたので、特にYaya Cityの文字が見やすくなったと思います。(緑というより抹茶みたいに渋くなりましたね・・・)
hermes collier de chien cuff price たわごと(2003-02-20)
hermes bags cost たわごと(2003-02-20)
たわごと(2003-02-20)
hermes bags europe たわごと(2003-02-20)