Windows VistaにおけるMS明朝・MSゴシックの収録グリフ数

どうにもドツボにはまってしまいました。こんなことを始めなければよかった。


こういう作業での本道は、1文字ずつ地道に数えることです。しかし安直なぼくは安直にメーカー資料をたよることにしました。Windows Vista における JIS2004 対応に関する詳細資料をダウンロードして、『MSゴシック・MS明朝ファミリー バージョン5.00(Windows Vista)で追加された文字』(以下メーカー資料)を計数することにしたのです。ひとまず変更された文字は見ないことにしておきましょう。ここでの問題はフォントで描画可能なグリフ数なので。

この資料により、MS明朝・MSゴシック(以下、MSフォント)での追加グリフ数は以下の通りと数えました。

  • 漢字……869907文字
  • 非漢字……175179字
  • 結合文字……29字(既収録分との重複を除き、符号位置にかかわらず描画結果を1文字とする)
  • 90jpタグ……122字(符号位置のない文字も1グリフと数える)

以上を合わせると1,1951,237字。この資料では2文字(非漢字)を削除とあるから、差し引き1,1931,235字となります。

一方でWindows 98からXPまでのMSフォントのレパートリは以下のとおりです。*1

以上を合わせると15,039字となります。これに先に数えた追加分1,1951,235字を足せば、全部で16,23216,274字がWindows VistaにおけるMSフォントの全収録グリフ数となるはずです。

しかしこれでは内訳が分かりませんね。追試がてら内訳を調べてみましょう。先のメーカー資料から数えれば以下のようになると思います。

  • JIS X 0213:2004……11,233文字
  • 上記とJAPANESE NON IDEOGRAPHIC SUPPLEMENTの差分……1,469字*2
  • 上記までとJIS X 0212の差分……3,126字*3
  • 上記までとマイクロソフト標準キャラクタセットの差分……33文字*4
  • メーカー資料にあるUnicode4.0通貨記号……1112字
  • jp90タグ……122字


以上を足すと15,96115,995字。あれ? 271279字も少ない……。ちょっと目をつぶるには大きい差ですね。うーん、どこで間違っちゃったのかなあ。などとやっているうちに、よせばいいのに「次期Windows NT(R) 5.0 及びWindows(R) 98にて、JIS X 0221 日本語規格を標準サポート」なんて資料まで見つけちゃって、ここでJIS X 0212にもJAPANESE NON IDEOGRAPHIC SUPPLEMENTにもない字を109文字サポートするって言っている。あーあ、これ本当に実装されたのかなあ……って自分で確かめればいいんだけど。しかし仮にこれを足したとしてもまだ100文字以上足りないぞ。

そのうち、規格で収録字数を知るには規格票を単純に計数していけばいいけど、フォントにおける収録グリフ数といった場合、たとえばダイヤクリティカルマーク(合成可能)などはどう数えればいいのだ、そもそもフォントにおける1グリフとはどのように定義しうるのか、などという本質的な問題に考え至り、どうも自分で自分の首を絞めてしまったみたいです。

ああ、Windowsのグリフセットの奥は深い……のか?




※補記……種々の数え間違いを修正しました。大変失礼しました。(2007.2.11)

*1:詳細はhttp://support.microsoft.com/default.aspx/kb/414023/jaを参照

*2:これは自分で数えた。ああしんど。

*3:京都大学第64回研究セミナー報告「JIS X 0212JIS X 0213安岡孝一・安岡素子の「3.4 JIS X 0213に含まれていないJIS X 0212の文字」3,144文字からJAPANESE NON IDEOGRAPHIC SUPPLEMENTの差分18文字を引いた数。しかしこの時の発表ではたしか46-34が増えて3,145字と言ってたような気が……。

*4:http://internet.watch.impress.co.jp/www/column/ogata/news4/zu2.htm