Windows Vistaの日本語フォントの内部には,jp90タグという仕掛けが実装されていて,Windows XPの字体に戻すことができるらしい。それは本当だろうか。そもそもjp90とはいったい何なんだろう。この疑問に答えるためには,JISにおける漢字コード規格の歴史を理解する必要がある。
JISの漢字コード規格は,大きく4種類ある。古いほうから順に,JIS X 0208(旧称JIS C 6226),JIS X 0212,JIS X 0221,JIS X 0213の4種類だ。このうちJIS X 0221は,Unicodeの翻訳規格みたいなものなので,とりあえず置いておくことにして,残りの3種類の漢字コード規格について,表1を見ながら,ざっと歴史を追ってみよう。
表1●JIS 漢字コードの歴史
|
JIS C 6226が最初に制定されたのは1978年。6802字を収録した漢字コードとして制定され,規格票の例示字体は写研の石井明朝体で印刷された。ところがJIS C 6226は,1983年に改正された際,漢字300字の字体を変更した。この改正で「同じ文字コードでも違う字が表示されてしまう」という現象が頻繁に起こった。いわゆる「83JIS改正の悪夢」だ。
さらにJIS C 6226は,1987年にJIS X 0208という名前に変わっているが,このときには規格そのものの変更は一切おこなわれていない。次の1990年の改正では,規格票例示字体を平成明朝体に変えたので,1983年版とは微妙に字体が変わってしまった。これに懲りて,1997年の改正では,規格票例示字体は一切いじることなく,字数も全く変更せず,あくまで規格そのものの明確化につとめた。
一方,1990年にはJIS X 0212(補助漢字)が制定された。JIS X 0212に収録されている文字は当時のJIS X 0208とは一切ダブっていない,ということになっている。これに対し,2000年に制定されたJIS X 0213は,JIS X 0208を拡張した漢字コードだ。JIS X 0213とJIS X 0212との間には,基本的には何の関係もないが,JIS X 0213の第三水準と第四水準には,JIS X 0212から2700字強が選ばれている。さらに,JIS X 0213は2004年の改正で,第一水準や第二水準の例示字体を,160字ほど変更してしまった。2004年の字体変更はかなりドラスティックなもので,「83JISの悪夢再び」とまで言われた。
このようにJISの漢字コード規格では,規格票の例示字体がコロコロ変わっている。一つの文字コードに対して,規格の時期によって異なる字体が例示されているのだ。これが,フォント制作者には頭痛のタネだった。というのも,表示・印刷においては,ユーザーによって1990年版の規格票に沿った字体が欲しかったり,あるいは2004年版の規格票例示字体が必要だったりするのだ。そういう要求を受けて,OpenTypeフォントのGSUBテーブルに導入されたのが,jp78,jp83,jp90,hojo,jp04という5種類のタグである。すなわち,jp78はJIS C 6226の1978年版,jp83はJIS X 0208の1983年版,jp90はJIS X 0208の1990年版,hojoはJIS X 0212の1990年版,jp04はJIS X 0213の2004年版,それぞれにおける規格票例示字体を意味するタグだ。これらのタグが,フォント内部に正しく実装されていれば,一つの文字コードに対する,それぞれの時期の規格票例示字体が,表示・印刷されるはずなのである。
では,なぜWindows Vistaの日本語フォントでjp90タグを使うと,Windows XPの字体に戻すことができるのか。この話には,実は微妙に嘘が含まれている。Windows Vistaの日本語フォントは,基本的にJIS X 0213:2004の例示字体(すなわちjp04)に沿ってデザインされており,デフォルトではjp04字形が表示・印刷される。jp90タグは,それを「JIS X 0208-1990の字体に変える」というだけのことだ。ただ,Windows XPの日本語フォントが,JIS X 0208-1990の例示字体に準拠してデザインされていたので,結果として,あたかも「Vista+jp90=XP」であるかのようにふるまうだけである。
しかしながら,Windows XPの日本語フォント(MSゴシックVer2.30とMS明朝Ver2.31)は,必ずしもJIS X 0208-1990の例示字体と合致してはいない。また,Windows Vistaの日本語フォント(メイリオVer5.00とMSゴシックVer5.00とMS明朝Ver5.00)は,jp90タグへの対応の度合いが,それぞれ異なっている。この結果,一部の文字では「Vista+jp90≠XP」が発生してしまう。
メイリオVer5.00では,jp90タグが156字に,jp83タグが375字に,jp78タグが384字に対して実装されており,hojoタグは使われていない。MSゴシックVer5.00では,jp90タグが122字に対して実装されており,jp83,jp78,hojoタグは使われていない。MS明朝Ver5.00では,jp90タグが122字に対して実装されており,jp83,jp78,hojoタグは使われていない。
メイリオVer5.00とMSゴシックVer5.00とMS明朝Ver5.00のすべてにおいて,jp90タグがサポートされている121字を図1~4に示す。これら121字については「Vista+jp90=XP」は正しいといえる。ただし,「筵」のjp90字形のうち,MSゴシックVer5.00とMS明朝Ver5.00のものは,JIS X 0208-1990の例示字体を充分フォローできていない。
![]() |
図1●Vistaの日本語フォントでjp90フルサポートの121字(うち1面16~22区の29字) [画像のクリックで全体拡大表示] |
![]() |
図2●Vistaの日本語フォントでjp90フルサポートの121字(うち1面23~33区の29字) [画像のクリックで全体拡大表示] |
![]() |
図3●Vistaの日本語フォントでjp90フルサポートの121字(うち1面34~40区の30字) [画像のクリックで全体拡大表示] |
![]() |
図4●Vistaの日本語フォントでjp90フルサポートの121字(うち1面41~82区の33字) [画像のクリックで全体拡大表示] |
次に,メイリオVer5.00だけがjp90タグをサポートしている35字を図5に示す。これら35字の中には,MSゴシックVer5.00とVer2.30の間,あるいはMS明朝Ver5.00とVer2.31の間に,微妙な字体差を含むものがあり,「Vista+jp90≠XP」になってしまっている。なお,メイリオVer5.00における「竈」のjp83タグは,jp78タグの間違いだと思われる。
![]() |
図5●メイリオVersion 5.00だけがjp90タグをサポートしている35字 [画像のクリックで全体拡大表示] |
メイリオVer5.00がjp83タグをサポートしている漢字のうち,jp83字形のほうが,よりWindows XPでの字形に近いと思える23字を図6に示す。これら23字に関しては,MSゴシックVer2.30やMS明朝Ver2.31のデザインが,JIS X 0208-1990よりむしろJIS X 0208-1983の例示字体に近かった,ということであろう。なお,MSゴシックVer5.00とMS明朝Ver5.00における「喩」のjp90字形は,JIS X 0208-1983の例示字体にむしろ近いので,本来はjp83タグとjp78タグでサポートすべきものだ。
![]() |
図6●メイリオVersion 5.00のjp83字形がXPに近い23字 [画像のクリックで全体拡大表示] |
メイリオVer5.00のjp78タグは,図2の「煽」や図5の「隙」などのjp78字形を見るかぎり,JIS C 6226-1978の例示字体にかなり忠実なようだが,実は100字ほど問題がある。筆者が見つけた101字を図7~9に示す。これらの多くは,jp78字形が「jp04に同じ」ものになってしまっている(jp78タグの付け忘れに起因する)。ただし,「嗤」「幤」「藜」「雎」については誤字形(JIS C 6226-1978の第1刷[1978年2月1日発行]には誤植が多く,その後に訂正がおこなわれた。ちなみに本稿の図に使用したのは,JIS C 6226-1978第10刷[1982年9月20日発行]すなわち最終刷の例示字体)がjp78字形として実装されており,注意を要する。
![]() |
図7●メイリオVersion 5.00でjp78字形に問題がある101字(うち1面16~33区の34字) [画像のクリックで全体拡大表示] |
![]() |
図8●メイリオVersion 5.00でjp78字形に問題がある101字(うち1面34~57区の34字) [画像のクリックで全体拡大表示] |
![]() |
図9●メイリオVersion 5.00でjp78字形に問題がある101字(うち1面59~82区の33字) [画像のクリックで全体拡大表示] |
図10~11に示した48字は,Windows Vistaの日本語フォントと,Windows XPの日本語フォントとの間で,何がしかの字体差があるにもかかわらず,タグが全くサポートされていない漢字である。これらのうち「栃」「卻」「郤」などは,字形に対するバグフィクスのように見える。それ以外の多くは,JIS X 0212-1990とJIS X 0213:2004の例示字体の差に起因しており,本来ならばhojoタグで対応すべきものだ。しかしながら,メイリオVer5.00もMSゴシックVer5.00もMS明朝Ver5.00も,これらの文字に対してはタグを一切サポートしておらず,結果として「Vista+jp90≠XP」とならざるを得ない。
![]() |
図10●字体が異なっているがタグサポートがない48字(うち第一~第三水準の23字) [画像のクリックで全体拡大表示] |
![]() |
図11●字体が異なっているがタグサポートがない48字(うち第四水準の25字) [画像のクリックで全体拡大表示] |
ちなみに,MSゴシックとMS明朝にはそれぞれVer2.50の「JIS90互換フォント」がある。これらはWindows Vistaに対して提供されるもので,「VistaをXPと同等にするフォント」という位置付けになっている。各図には,これらVer2.50フォントの字形も併記しておいた。図1~4の121字では,Ver2.50の字形はVer2.3xと全く同じであり,「VistaをXPと同等にするフォント」として使えそうである。しかし,図5~11では,かなりの文字でVer2.50とVer2.3xに違いが見られることから,Ver2.50を「VistaをXPと同等にするフォント」として使うには難がある。
さらにVer2.50では,Ver2.3xになかった漢字が900字以上も追加されている。Ver2.50でこれらの漢字(図12~13に例を示す)を使ってしまうと,従来のVer2.3xを搭載したWindows XPでは表示できない。この点においても,Ver2.50を「VistaをXPと同等にするフォント」とするには危険がある。
![]() |
図12●Version 2.50で追加された人名用漢字73字(うち1面14~87区の37字) [画像のクリックで全体拡大表示] |
![]() |
図13●Version 2.50で追加された人名用漢字73字(うち1面88~94区の36字) [画像のクリックで全体拡大表示] |
まとめると,Windows VistaとWindows XPの表示・印刷字体を統一する際に,「Vista+jp90」や「JIS90互換フォント」を用いるという方法は,現実には微妙な字体差を生じてしまう。しかも,Windows XPでは表示できない漢字を使ってしまう可能性があり,正直なところオススメできない。
それよりは,Windows XP上にVer5.00の「JIS2004対応フォント」をインストールし,Windows Vistaと完全に同じ字体にしてしまうほうが,「統一」という意味でも安全だし,長期的に見ても安定した方法だ。読者諸氏も,手元のWindowsパソコンをすべてVer5.00フォントで統一すべく,検討してほしい。
|