Firefox for Mac OS Xはハートマークをヒラギノで表示できない

NAOI2006-06-27


  • Firefox for Mac OS X(1.5.4.0で確認)では、記号の一部(たとえばハートマーク)が化けて表示される。
  • Firefoxで化ける文字はIEでも同じような化け方をする。が、Safariでは化けない。
  • 画像は化ける記号の一部。上のウインドウがソース。
  • Firefoxのウインドウでテキスト(化けている)を全選択してコピーし、エディタにペーストしたものが下のウインドウ。ハートマークなどがすべて復活する。つまり、Firefoxは符号と表示が一致していないような振舞いを見せる。
  • この化け方は、「90pvフォントで作成したドキュメントを83pvフォントで表示した場合」と同じである。そこで、Firfoxの表示フォントをヒラギノ(83pv)からOsaka(90pv)に変えてみると、ハートマークなどは化けずに表示される。
  • どうもFirefoxは文字を表示する際、「一度MacJapanese(90pv)に変換した上でShift-JIS用のAPIを使って描画する」みたいな特殊なことをやっているらしい。
  • Mac OSUnicode描画APIが整備されておらず、Mac OSの標準フォントが90pvだった時代の(Netscapeの)独自実装の亡霊なんだろうけれど。