Chromeのアドレスバーが文字化けして絵文字だらけに!解決法は?
2018/04/07
Google Chromeのアドレス/検索バー(Omniバー)が急に文字化けして絵文字や記号だらけになってしまいました。サイトの内容は問題なく表示されるんですが、タブの表示もおかしいです。原因と解決法を紹介します。
Chrome 51.0 + Windows 10 64bit で問題と解決を確認しました。
目次
文字化けの原因
文字化けしている原因はWindowsのシステムフォントをカスタマイズしていることです。どうやらWindows 7 + Chrome 23でも起きていたことのようで、Chromeヘルプフォーラムに掲載されています。
アドレスバーの文字列が正常に表示されない - Google Chrome ヘルプ フォーラム
要約すると、システムフォントをカスタマイズしていると文字化けすることがあるから、デフォルトに戻してくれということです。
システムフォントの変更
Windows 7まではシステムフォントを変更する方法があったんですが、Windows 8以降は無くなってしまいました。
Windows 8/8.1/10 でのシステムフォント変更
Windows 8以降でも「Meiryo UIも大っきらい!!」というソフトを使えばシステムフォントを変更できます。
Tatsu ミュージアム - Tatsu's life on the Web で配布されています。
私もこのソフト(Version 2.20)を使ってシステムフォントを変更していました。どうやらそれが原因だったようです。
デフォルトに戻すと文字化け解消
「Meiryo UIも大っきらい!!」を再び起動して、フォントを設定を元に戻しました。メニューバーのプリセットからOSを選んでOKを押せば元に戻せます。
OKを押して閉じ、Chromeを再起動すると文字化けが解消していました。
私の場合は、タイトルバー以外をすべて「ヒラギノ角ゴ3」(Windows用TrueType版)にしていました。問題が起きているのはChromeのOmniバーだけなので、どこか1箇所だけ元に戻せば良いはずです。
調べてみると、「メッセージボックス」の項目をヒラギノにすると文字化けが再発しましたが、それ以外は関係なかったようです。メッセージボックスだけをWindows 10のデフォルト、Yu Gothic UIにしました。
ちなみに:文字化けの中身
文字化けした文字列を比較してみましょう。
比べてみると、「w」がハートマークになっていたり「o」が右上矢印になっていたりと対応関係は取れています。
表示される文字は間違っているものの、他のウインドウに内容をコピペすると元の文字列で表示されました。なので、文字そのものがおかしくなった(別の文字に置き換わった)のではなく、表示だけがおかしいということです。考えられるのは以下の2通り
- 意図しない別のフォントになってしまった。
- 間違って別のコードの文字を表示してしまった。
別のフォント
別のフォントで考えられるのは、アルファベットのコードで絵文字で表示するフォント「Wingdings」や「Webdings」の類です。
これなら絵文字になるのも納得なんですが、残念ながら手持ちの絵文字フォントで今回の文字化けと一致するものはありませんでした。
別のコード
別のコードに置き換わっているとすると、何らかの規則性がありそうなものです。ビットがずれているとか、何か付加されているなどです。分かりやすい「w」→「♥」(ハートマーク)、「o」→「↗」(右上矢印)で比較してみましょう。
(ハートマークや矢印は、環境によって表示されなかったり絵文字に置き換わったりします。)
Unicode位置(16進) | 10進 | 2進 | |
---|---|---|---|
w | U+0077 | 119 | 0000 0000 0111 0111 |
♥(ハート) | U+2665 | 9829 | 0010 0110 0110 0101 |
Unicode位置(16進) | 10進 | 2進 | |
o | U+006F | 111 | 0000 0000 0110 1111 |
↗(矢印) | U+2197 | 8599 | 1000 0101 1001 1001 |
私には規則性を見いだせませんでした……。
まとめ
どうしてこの文字に化けたかまでは分かりませんでしたが、文字化けを解消することができました。
フォント設定って欠けたり化けたり崩れたりして難しいですよね! でも汚い文字を見続けるより遥かにマシです。