
trick or treat?
気がつけば今年も残すところあと2ヶ月ですねー。ハロウィンとかとは全然関係ない生活ですけど。ということで、週末はずーっとのんびりぽわわしてましたが、何してたかっつーと、フォント作ってました。なんでそんないきなり!
話の発端はなんか同時多発的に(というほど多発でもない)Emacs/xyzzyでCodingFontTobi1(proggy_font)を使ってるみたいな話でして、へぇーそんないいのーと思って見てみたんですけど、まぁ悪くはないけどちょっと小さいんだよなぁーと。
というか、元がBitmapフォントなので、単位がpx単位なので9ptサイズで使ってFontLinkでMSゴシックを組み合わせるにもちょっとうまくいかなくて普通にこれは使えないじゃん、と。そのへんEmacs/xyzzyはASCIIフォント(欧文フォントと言うべき?)と日本語フォントを別々に設定できるんで、問題ない様子。まぁでもCodingFontTobi1自体が縦横比2:1になってないので、MSゴシックの全角文字と混ぜるとずれてるみたいなんですけど。
じゃあ、作ればいいじゃん。
…と、あとはいつもの展開になりまして、作ることにしたんですが、そもそもBitmapフォント(fonファイル)ってWindows Executiveなファイルなんですよねぇ。なんかその時点でなんともやりたくない感じなので、TTFで作ることに。
で、どうせ9ptのMSゴシックと組み合わせることしか考えていないので、そこは完全にそれ特化になるように作ればかなりの労力を省けます。9ptというのは96dpi環境では高さ12pxでラスタライズされるので、そこを利用してやることにします。必要なものはTTFフォント作成ツール(私はTTEditしか思いつかなかったのでそれを使いました)と、ペイントツール(昔っからPaintShopProです、私は)と、ドット打ちする気合いとかでしょうか。
まずTTEditで新規の等幅欧文フォントをつくるわけですが、高さ12px、幅6pxのキャンバスにドットを打つ予定なので、仮想ボディが1024なので、これを12分割して下2px分がベースラインより下(ディセント)になるようにするとー、1024÷12×2≒171ですか。ってことで(意味あるかは知らないけど)ディセント171のアセント853とかにしときます。
で、これを適当に名前つけて(ホントに適当なのでここではmyCodingFontと名付けました)、レジストリエディタからFontLinkの設定をします。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink とかいうところにFontLinkの設定場所があるので、そこに複数行文字列値(REG_MULTI_SZ)を作って(Win2000のregeditでは作れないのでregedt32のほうを使ってください)、そこに適当にFontLinkしたいフォントを列挙します。まぁとりあえずMSゴシックと結びつけたかったので、MSGOTHIC.TTC,MS GOTHICあたりを入れておきました。
ちなみに興味本位で調べてみたらcureblack.comとcureblack.netは既に取得されていますが(.orgはあいてるっぽい)、curewhiteは.com、.net、.orgともあいてるみたいです。やっぱ黒の方が人気なんだな! …っていうすげーどうでもいいオチがきた。