font-familyを書き換えてClearTypeを有効利用しよう

実は完成してたんだけど、最近ちょっと書き換えて、かなりよいできになったんで。
Greasemonkey用UserScriptだ。GreaseMonkeyを導入する必要がある。
すなわちFirefox専用だ。確かにGreasemonkey的なのはあるはずだけど、まぁ期待しないほうがいい。
特にGreasemonkey拡張の関数を使ってるから。
/fdiary/img/rwfont.user.js
まぁこれを利用する意味というと、2つ考えられて、
気に入らないフォントを消すことと、ビットマップの入ったフォントを不便であるから置き換えるか。
まぁ前者はあんまり使わないけど、後者は実際のところ使ってる。
たとえばだけど、IPAモナーフォントを拾ってきて、
/fdiary/read.php/1172771146
にあるとおり、sbitfrontを用いることとすれば、readmeのとおりSBIT32を用意して、あとは自動で適当にやってくれる。
ちなみにこれ、埋め込みビットマップの無力化言ったほうがいいほどいい加減だから。
作者が言うんだから間違えない。確かに除去してるのはそうなんだけど、やり方がいい加減すぎる。
それとか、MS Pゴシックのビットマップを消したければttc2ttfで分解した後同じ方法をとる。
もっとも、フォント名の変更はいるが。
これを上書きする勇気があるなら知らんが。実はセーフモードでやればできる。
でもかったるいだろうし、危険も伴う。だからやめたほうがいい。
だからこんな場合、設定をしらみつぶしに書き換えるしかないんよね。
で、Webページとなるとねぇ。
というわけで便利なのがこのスクリプトなわけだな。
まぁ導入した後、スクリプト管理で編集するといい。
しかし、これも完璧ではないわ。でもほとんどのフォントを置き換えることができるのは画期的。
まぁ欠点はJavasciptで動くので動作が緩慢なこと。
でも最近のPCならこの欠点もほとんど目立たないかな。
どっちかというと読み込み完了まで動かないことの方が気になるぐらい。
おかげで表示がずいぶん美しくなったんじゃないかな。
ところで、IEとFirefoxでfont-familyの解釈がちがうところを発見した。

body {font-family : Arial , Meiryo , sans-serif}

とあったとする。それで日本語・英語の混在した文章を書く。
すると、FirefoxはArialで書ける英語部分はそれで、日本語は第二優先のMeiryoで書いてくれる。
IEはというとArialがあるからこれで書くんだけど、日本語はしょうがないから日本語の既定のフォントで書かれる。
すなわち多くのPCではMS Pゴシックで埋められる言う意味だ。
で、ついでに言うとMicrosoftはCJK統合漢字のバグの加減で日本語フォントから指定するように言ってた気がする。
過去のことかもしれんが、この挙動をみてもそうしたほうが安心だな。
まぁFxの解釈もIEの解釈もどっちも正解だとは思うけど。
IEの解釈はどっちかというとWindowsとかのフォントの自動補完に似てるな。まぁええけど。