Chrome 37でWindowsではDirectWriteを使ったフォント・レンダリングがデフォルトで有効になった。頻発していたらしいマルチバイト文字列がまったく見えなくなるバグは、マイナー・アップデートでそこそこ解消されたようなので常用しても問題なさそうだ。しかし一部のフォント、例えばM+が表示できないという不具合に遭遇している。
M+で表示できないだけで、空白にはならず代わりに標準フォントに指定しているフォントが使われる。標準フォントの指定をM+のどれかにした場合は、MS Pゴシックになる。等幅フォントにM+ 1mを使おうかなと思って設定して気づいた。M+を継承しているMigMixやVLゴシック、Ricty Diminishedなどでも同様に表示できない。
M+特有というわけでもないようで、Source Han Sans (源ノ角ゴシック)やその派生のNoto Sans、他にも梅フォントや小夏なども表示できない。
プリインストールされているメイリオやMS Pゴシック、游ゴシックあたりはまったく問題ない。そこらで配布されているものでもIPAexゴシックは大丈夫だった。
自分の環境だけなのかなーという不安はあるけど、適当に検索したらいくつか似たような現象を見つけたので、「Some fonts cannot be displayed with DirectWrite enabled」というタイトルでイシューを立てた。Chromeを--no-sandbox
オプション付きで起動すると解消するので、フォント側の問題じゃなさそうだ。
どうやらショートカットとしてフォントをインストールしているとうまく読めないことがあるようだ。ショートカットとしてインストールしていたフォントをすべて削除してから、改めてフォント・フォルダーにインストールしてやったら直った。