Solaris8 / SPARC に TrueType Font を追加するの巻

さまり

Solaris 2.6以降の OpenWindows サーバ (Xsun) には、実は TrueType Font をなんとかする能力があります。面白いので、フォントを取り替えてみる実験をしました。フォントサーバでも使えますので、もっとおもしろい用途があると思いますよ。とりあえずは使えるようにするのと、Navigator で使えることをターゲットにしました。

実行したマシンは Solaris 8/SPARC/Ultra 1 です。Intel 版でも参考にはなると思います。

きっかけ

常用のNetscape Communicator 4.75のJIS X0208フォント(要するに漢字フォント)を HG ゴシック(Ricoh)に変えてみました。きれいなんだけど、なんかJIS 16x16に比べて力が足りない感じがします。ということで、別のフォントで確かめてみることにしました。

/usr/dt/bin/sdtfontadm で追加/削除できるはずなんですが、どういうわけかわたしのマシンでは core ってしまうので、手動で追加します。

FontCityで確認してみた

TTF フォントを追加するだけなら、fonts.dir をでっち上げて xset fp+ でパスを追加するだけです。(「試してみたよ」の1, 2 と最後を実行するです)これは特別な手法を必要としませんし、xfontsel でもちゃんと選択できます。ただ、Navigator では困ったちゃんが発生するのです。

FontCity (富士通製) を追加して Navigator でチェックしてみたところ、基本サイズが12.0級しか出てきません。ちょっと小さすぎるな、ということで、いろいろチェックしてみたところ、TTbitmap/ 下にあるもののサイズと12.0級がリストアップされるようです。結局ビットマップフォントを用意しないといけないようです。

試してみたよ

  • fontcity-mincho.ttf -fujitsu-fontcity mincho-medium-r-normal--0-0-0-0-m-0-jisx0201.1976-0
    fontcity-mincho.ttf -fujitsu-fontcity mincho-medium-r-normal--0-0-0-0-m-0-jisx0208.1983-0
    fontcity-mincho.ttf -fujitsu-fontcity mincho-medium-r-normal--0-0-0-0-c-0-jisx0201.1976-0
    fontcity-mincho.ttf -fujitsu-fontcity mincho-medium-r-normal--0-0-0-0-c-0-jisx0208.1983-0
    
  • catalogue=
    ....
    /usr/openwin/lib/locale/ja/X11/fonts/TT,
    /usr/openwin/lib/locale/ja/X11/fonts/UTF8,
    /usr/openwin/lib/locale/ja/X11/fonts/75dpi,
    /usr/openwin/lib/locale/ja/X11/fonts/TTbitmaps,
    /usr/local/TeX/lib,
    
  • deferglyphs=16
    
  • % fstobdf -server localhost:7100 -fn '-fujitsu-fontcity mincho-medium-r-normal--16-0-0-0-m-0-jisx0208.1983-0' | bdftopcf fc-m-16.bdf | compress > fc-m-16.pcf.Z
    
  • おおよそ以上です。13.4級とか言われるけどまぁ気にしないということで。でも汚いです〜(涙)。ビットマップは専用のものが入手できれば、それがいいようです。

    あと、Navigator の場合、小さめのフォントで表示する個所だと、字詰めを計算するときの横幅と文字を描いてみたときの横幅が異なるようで、妙なすきまがぽつぽつと空いています。おそらく改行などで区切られた位置なのでしょう。これはちょっとみっともないのですが、なおし方がわからないので放置することにします。

    ttcフォント

    とあるページから、ttc2ttfなるツールをいただいてきました。これそのままでは gcc でコンパイルできなかったりしますが、すぐ直りますので安心下さい。これを使って、ttc(TrueType Collection)なるフォントを ttf に直しましょう。

    やりかたは、もとのファイルを HGRPP1.TTC だとすると。

    % ttc2ttf HGRPP1.TTC
    

    以上です。HG創英角ポップ体だと hgrpp1[012].ttf の3つができました。それぞれ、HG創英、HGP創英、HGS創英に対応します。

    バラしたらあとは上に書いた通り、フォントを追加してビットマップを生成すると、通常通りつかえます。

    これからやること

    追加したフォントを DPS から使うにはどうするか、ちょっと考えています。必要とも思えないですけどね。

    更新履歴