Windowsのフォントリンクという機能

 文字コードとフォントでは、ディスプレイに文字を表示するのにフォントファイルが必要であるというお話をしました。

 例えば日本語を表示する場合には、ひらがな・カタカナ・漢字のグリフを含んだ和文フォントを使わなければ表示できません。アルファベット・数字・記号のみの欧文フォントでは表示できないのです。

 同様にハングル文字を表示する場合には、ハングル文字のグリフを含んだフォントを使わなければなりません。

 欧文フォントの一つにtahomaというフォントがあります。

 UTF-8で保存したハングル文字は、フォントにtahomaを指定するとなぜか表示できてしまいます。


図1
 これは、Windowsフォントリンクという機能がはたらいているからです。

 フォントリンクとは、グリフの不足を補うために、あるフォントに別のフォントをリンクさせることです。

 ハングル文字のグリフを含むフォントの一つにgulimというフォントがあります。

 今の例の場合、tahomaというフォントにgulimというフォントがリンクされているので、tahomaでハングルを表示できるわけです。

 フォントリンクの設定はレジストリ(「スタート」→「ファイル名を指定して実行」→「regedit」)で行います。

 「\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink」を開いてみましょう(下はWindows XPの例)。


図2
 tahomaにgulimがリンクされているのがわかります。

 「値のデータ」の書式は「フォントファイル名(カンマ)フォント名(改行)」です。

 上図ではgulimの他にも日本語フォントである「MS UI Gothic」、中国語(簡体字)フォントである「SimSun」、中国語(繁体字)フォントである「PMingLiU」がリンクされていることがわかります。

 結果としてtahomaフォントを使うと、日本語、韓国語、中国語(簡体字繁体字)を表示することができます。

 ここで、「gulim.ttc,gulim」という行を削除し、Windowsを再起動してみました(ご自身で試す場合は自己責任でお願いします)。

 先ほどのファイルを開くとtahomaでハングル文字が表示できなくなりました。


図3
 なお、あらかじめ設定されているフォントリンクはWindowsのバージョン(XP、Vista、7など)によって異なっているようです。


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