Nobuyuki Tsuchimura
tutim****@nn*****
2005年 9月 30日 (金) 14:53:27 JST
土村です。
ft2vert.{c,h} を commit しました。
freetype-2.1.10 を前提として、
GSUB の vrt2/vert feature を読み取り、
縦書フォントの gid を得ることができます。
xdvi とは独立に書いたので、他のアプリでも使えると思います。
現在はわざと大量のデバッグコードをいれてあります。
バグがないとわかれば、シェイプアップします。
また freetype-2.1.9 以前でもエラーにはならないようにしてあります。
------------
xdvi からもテストで使えるようにしました。
freetype-2.1.10 でビルドして(Makefile は適宜修正して下さい)、
TrueType フォントをご用意下さい。
vfontmap には
-----
/usr/X11R6/lib/X11/fonts/TrueType/sazanami-mincho.ttf
tmin cidv
jisv cidv
-----
などと、書いていただいて、縦書の文章を見ます。
OpenType フォントなら正常になるところですが、
TrueType フォントを使っているので、役物や拗音が化けます。
次に vf2ft.c の 1373行からの3行のコメントをはずして
有効にします。代わりに、直前の2行をコメントにします。
(switch 文中の defalt: ラベルの直後です。)
この状態で make すると、役物や拗音が正常になるはずです。
CoverageFormat = 1
GlyphCount = 1ea
GlyphCount = 1ea
などというデバッグ情報も stdout に大量に表示されるはずです。
OpenType フォントで試していただいてもよいですが、
見掛け上の変化はないので、テストとしては面白くありません。
もし文字化けが起こるようだと、
freetype-2.1.10 をちゃんと使えてるかどうか、
確認してください。ヘッダの include とライブラリ
freetype-2.1.10/objs/.libs/libfreetype.a
をリンクできているかの2点がポイントになります。
手元では、以下のフォントで試しました。
sazanami-gothic.ttf sazanami-mincho.ttf
lxgothic.ttc lxgothub.ttc lxmgoth.ttc lxmincho.ttc lxpop.ttc
dfbrr7.ttc dffry2.ttc dfkai7.ttc dfminc.ttc dfpost7.ttc
さざなみ2書体とリコーの LX 5書体でうまく動いています。
Dyna フォントの DF 5書体には、GSUB テーブルがないようで、
dvipdfmx でも変になります。これはしょうがないでしょう。
---------
ある程度動作確認していただけたら、
→vfontmap の書式変更
→内部処理の簡略化(不要ルーチンの削除)
という順序で作業していくのがよいと思います。
-----
土村 展之 Nobuyuki Tsuchimura