ホーム / おぼえがき / HTML で難しい漢字を表示させる
HTML で、JIS、Shift-JIS、EUC に載っていないような難しい漢字を表示させるための方法を述べてみます。(環境:Windows98 or WindowsXP)
人気アイドルグループ SMAP の「くさなぎつよし」の「なぎ」の字は、通常の日本語漢字コードには載っていない難しい漢字です。しかし、日本語のコード表にないのだから表示できるわけがない……とは限りません。
どうやって表示させるか?…Unicode という文字コードを使えば良いのです。Unicode というのは、簡単に言うと「世界中の文字を1つにまとめたコード表」です。即ち、中国語、ロシア語、韓国語など主な文字は全てここに収められています。Unicode で表現する方法は以下で述べますので、きちんと表示されるか否かは「見る側の環境」にかかっています。
即ち、Unicode の文字を読めるかどうかは、見る側のマシンやブラウザが Unicode をサポートしているか否かで決まります。
Windows の場合、Windows98 以降であればサポートされているようです。なお、Unicode についての詳細は、様々なページで紹介されているので省略します。(参考:Unicodeという新しい標準)
元となる難しい漢字は、インターネットなどで探し出すことができればそれが一番です。文字は知っているがインターネットから探し出せないということであれば、漢字コード表から地道に探し出さなくてはなりません。
今回のテーマである「なぎ」の字、私はJohnny's Link Roomで見つけました。Windows98 で Internet Explorer では正しく見ることができました。

但しこれは Shift-JIS で書いてあるために、EUC や JIS の環境では文字化けして読めない筈です。そこでこれを、HTML で汎用性のある(と思われる) Unicode で表現しようというわけです。
Unicode というのは新しい規格であるせいか、コード番号を調べるツールはあまり多くはありません。その中で、私が使っているのは Pleasure Sky 社の漢字コード表 Kanji ver1.0です(Windows のみ対応)。ダウンロードして解凍すればそのまま使えるので、お手軽です。

この表により、「なぎ」の字は Unicode の 5F45 で表されることがわかります。
5F45 というのは16進表示なので、10進表示に直します。関数電卓を使いましょう。Windows の場合は、スタートメニュー→プログラム→アクセサリ→電卓が使えます。
「電卓の種類」を「関数電卓」にして、左上の「16進」を選んでから「5f45」と入力して「10進」を選べば完了。10進では「24389」であることがわかります。
「なぎ」を HTML での文字参照に直すには、彅 と表記します。即ち、ソースには「草彅剛」と書きます。すると、ブラウザ上では次のように表示されます。(ここでは拡大します)
草彅剛
ブラウザ上で、正しく見えれば成功です。いかがでしょうか。
OS やブラウザで Unicode をサポートしていなくて正しく表示されなくても、この書式の場合はブラウザが「?」「・」などで代替するため、それ以降の字を巻き込んで文字化けするなどのことは起こりません。(実はこれが一番の長所。Unicode がサポートされていない環境の人に迷惑をかけることはない安全な方法です)
但し、殆どのメーラは Unicode をサポートしていないと思われるので、表示された Unicode の文字をメールに貼りつけて送信すると受信側で文字化けを起こすなどのトラブルが起きますので、メールには使えません。
鄧小平 … 鄧小平 (中国の元首相)
森鷗外 … 森鷗外 (作家)
森雞二 … 森雞二 (プロ棋士)
趙成珉 … 趙成珉 (プロ野球選手)
德 … 德 (徳)
悅 … 悅 (悦)
淸 … 淸 (清)
瀨 … 瀨 (瀬)
賴 … 賴 (頼)
郞 … 郞 (郎)
鄕 … 鄕 (郷)
靑 … 靑 (青)
髙 … 髙 (高)
黑 … 黑 (黒)
朗 … 朗 (朗)
隆 … 隆 (隆)
﨑 … 﨑 (崎)
猪 … 猪 (猪)
礼 … 礼 (礼)
神 … 神 (神)
福 … 福 (福)
羽 … 羽 (羽)
諸 … 諸 (諸)
逸 … 逸 (逸)
都 … 都 (都)