なぜメモ帳ではArialでハングルが表示できるのか?

なぜtahomaでハングルが表示できるのか?では、欧文フォントであるtahomaでは、フォントリンクというしくみを使ってハングルが表示できるというお話をしました。


 tahoma以外の欧文フォントの一つにArialがあります。

 私が今使っているWindows XPでは初期設定でArialに対するフォントリンクは設定されていません。


図1
 当然、Arialではハングルを表示できません。


図2
 ところが!!

 なんとメモ帳ではArialでハングルが表示できてしまいます!


図3
 詳しいことはわかりませんが、どうやらWindows APIにおいて文字を描画する関数が何種類かあって、それらの関数はいずれもレジストリのフォントリンクの設定に従いますが、レジストリにフォントリンクの設定がなかった場合に、フォントリンクをしない関数と、自動的にフォントリンクをする関数があるようです。

 そして、秀丸エディタは前者の関数を使っているので、フォントリンクの設定がないArialでハングルが表示できず、メモ帳は後者の関数を使っているので、フォントリンクの設定がないArialでもハングルが表示できたというわけです。

 ただ「MS Pゴシック」だけはメモ帳でもハングルを表示できません。

 「MS PGothic」に対しては「Lucida Sans Unicode」(ファイル名:L_10646.TTF)にフォントリンクが設定されています(どちらもハングルを含まないフォントです)。

 メモ帳が使う後者の関数はレジストリにフォントリンクの設定があればそれに従うので(すなわち自動フォントリンクは無効)、メモ帳においても「MS PGothic」ではハングルを表示できないということでしょう。

 試しに、「MS PGothic」のフォントリンクの設定を削除し、Windowsを再起動してみました(ご自身で試す場合は自己責任でお願いします)。

 すると、(自動フォントリンクが効いて)メモ帳で「MS Pゴシック」でハングル文字を表示することができました。


図4


引用元:なぜメモ帳ではArialでハングルが表示できるのか?(フォント関連) | 読み物 | ウナのIT資格一問一答