[Mplus-fonts-dev 118] Re: スクリプトアップデート

Back to archive index

KANOU Hiroki kanou****@khdd*****
2003年 11月 24日 (月) 14:30:45 JST


狩野です。いまづさん、ご確認ありがとうございます。

[Mplus-fonts-dev 101] のいまづさんのテスト結果
> 1.PfaEditを通常通りコンパイルしたものでkochi-gothic-substitute.ttfを開き、
>   Kochi-Gothic.ttfを出力(保存ではなく)
> 2.tottf.cの2851行(・・・だと思いますが)をavg1/cnt1に修正して
>     コンパイルしたものでKochi-Gothic2.ttfを出力
> 
> これらをWindowsXPにインストールしてメモ帳、Mozilla、IEで表示確認しましたが、
> 1.のほうは日本語部分がスペーシング(というかフォントの幅)が
>   リンク先3、4番目のスクリーンショットのようになりました。

によると、WindowsXP では、日本語フォントの表示の際に OS/2 テーブルの
avgCharWidth の値を見て送り幅を決めているようですね。

ところで、SetPanose() で固定幅を指定してから出力したフォントを
MS Font Validator にかけると、
「OS/2 テーブルの Panose[3] の値が 9 (Monospaced) なのに、
  post テーブルの isFixedPitch の値が 0 になっている」
というエラーメッセージが出てきます。
どうやらこの 2 つは揃っていなければならないようです。

というわけで、以下のパッチが必要のようです。

(この変数は、tottf.c の 3567 行目で at->isfixed にコピーされ、
それが 2513 行目で post テーブルに書き出されます。)

--- tottf.c~	Sun Nov  9 12:49:49 2003
+++ tottf.c	Mon Nov 24 14:23:39 2003
@@ -4422,7 +4422,8 @@
     at->gi.onlybitmaps = format==ff_none;
     at->gi.flags = flags;
     at->gi.bsizes = bsizes;
-    at->gi.fixed_width = CIDOneWidth(sf);
+    at->gi.fixed_width = (sf->pfminfo.pfmset) ? (sf->pfminfo.panose[3]==9) :
+						CIDOneWidth(sf);
     at->isotf = format==ff_otf || format==ff_otfcid;
 
     at->maxp.version = 0x00010000;

狩野 宏樹  <kanou****@khdd*****>



mplus-fonts-dev メーリングリストの案内
Back to archive index