最近はメイン環境がWindowsで端末にWindows Terminalを使っていて、機能的には一通り満たしているのだがフォントのレンダリング品質に納得していなかった。フォントデザイン的にはNasuMフォントが気に入っているのだが、それを使用した時に垂直方向のアンチエイリアスが行われないのが不満で、issue上げたりもしていたのだが進展は見られなかった。
で、今日ふとしたことでこの記事を見かけ、フォントにヒンティング情報がないことが問題なのではなく、ヒンティング情報はあってそれが低品質なのが問題なのではないかということで書いてあることを試してみた。
上記のQiita記事の通りにNasuMフォントのヒンティング情報を消してWindows Terminalでbefore / after。ほんとだ! んもーDirectWriteってばやればできる子だったんじゃん pic.twitter.com/y0PTFmaM98
— gony(LHO) (@gony) January 1, 2021
結果としては改善が見られ、そこに書いてあることは正しそうだ。この記事では一括変換のシェルスクリプトを書いているが、必要なのがNasuMのRegularだけであればそこまでする必要もなさそう。ぼくはヒンティング情報を削除したフォントをNasuMDという名前で作りたかったので、WSLにttfautohintを入れて、
$ ttfautohint -d -F "D" NasuM-Regular-20200227.ttf NasuMD-Regular-20210101.ttf
と実行するだけで十分だった。出力先のファイルに日付はいらなかった気もするが...
Generated by Rui 0.4.3