最終更新日: 2012-02-12
その昔、NEWSやSunのワークステーションを 学校で使ってたころ (1990年代前半)、 日本語表示に使えたのは、 X11付属の14, 16, 24ドットのフォントだけ (…だったと思います) でした。 そういう状況において、1990年代の中ごろになると、 当時のデファクトスタンダードであったPC-9801系マシンや、 台頭しはじめてきたPC/AT互換機(いわゆるDOS/V)マシンで、 丸文字フォントなど、いろんな文字フォントが使えるように なってきました。
DOS/Vの日本語フォントは、「$FONTX2」という形式で 配布されるものが多かったように思います。 というか、この形式がデファクトスタンダードですね。 そこで、これらの$FONTX2形式のフリーのフォントを Xで使えるように、fontx2bdfというプログラムを作りました。
また、DOSで動くフォント変換ツールとしては、 「ふぉんと昆布」というソフトが有名です。 これを利用して、さまざまな形式のフォントを$FONTX2に変換しておけば、 それらをBDFに再変換してXで利用できます。
ところで、わたしは、このfontx2bdfをCで書きましたが、 同じようなことを考える方がいらしたようで、 Perl版が公開されています。 このPerl版(としちゃん氏のfontx2bdf)の方が世間では有名のようです。
% fontx2bdf < [$FONTX2フォント] > [BDF形式]こんだけです(苦笑)。 たとえば、以下のようにします。
% fontx2bdf < jpkhn16x.fnt > jpkhn16x.bdf
あとは、BDFフォントファイルの標準的なインストールを行えば 変換したフォントを利用できるようになります。
% cd /tmp % mkdir fontx2bdf % cd fontx2bdf % tar xzvf /tmp/f2b.tgz % vi makefile % make # make install # make install.manのようにします。
なお、fontx2bdfは、FreeBSD上で開発を行ってきましたが、 ほとんどすべてのUNIXシステムで利用可能です。 さらに、DOS環境でも動きます。 コンパイラは、UNIXのccやgcc以外に、 DOSのTurbo-C, LSI C-86, MS-Cにも対応しています。
→なんかコンパイル済みバイナリのニーズもあるらしいので、 LSI C-86 3.30C試食版による 実行形式 を用意しました(2012-02-12)。 ファイル名に8.3文字制限があるので、 「fontx2bdf」を「fntx2bdf」と短くしています。
% fontx2bdf < foo.fnt > foo.bdfと入力するだけで変換できます。
しかし、Xでフォントを利用するためには、 単にフォントの形式を変換するだけではなく、 フォントを格納しているディレクトリにフォントファイルを置いてやる必要が あります。
続く…(苦笑)
ご質問などありましたらお気軽に