Edited at

Mojaveで外部ディスプレイのフォントが汚いのをなんとかする

Mac OSX Mojave は、Retina によってもはや不要となった、サブピクセルアンチエイリアス処理がオフにされました。て、いやこれ Retina ディスプレイなら細いフォントで綺麗なんですが、非 Retina 外部ディスプレイではひどいことになるじゃないですか。

スクリーンショット 2018-12-11 15.31.26.png

アプリにもよりますが、自分が使っている VSCode はこのありさまでした。

これを以前のアンチエイリアス処理に戻す方法があります。

defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO

この設定以後、起動するアプリのフォントスムージングオプションが変わるようです。

また、 アンチエイリアスの強度を変更する設定もあるみたいです。

defaults write -g AppleFontSmoothing -int 3

defaults write -g AppleFontSmoothing -int 2
defaults write -g AppleFontSmoothing -int 1
defaults write -g AppleFontSmoothing -int 0

3から0の値は、強・中・弱・無にあたるようです。こっちはいったんログアウトしないといけないらしいですね。

...では、御覧くださいこの劇的ビフォー・アフター!!

スクリーンショット 2018-12-11 15.31.26.png スクリーンショット 2018-12-11 15.40.51.png

4Kモニター買ったとき元に戻すには NO を YES に

defaults write -g CGFontRenderingFontSmoothingDisabled -bool YES

OS の GUI シェルなどはこの

スクリーンショット 2018-12-11 15.45.15.png

「使用可能な場合は滑らかな文字を使用」 が関係しているようです。

各設定の関係はあまり理解してないのですが、とりあえず、普通の外部ディスプレイ (Retina 以前の Thunderbolt) をメイン側に使っている自分としては、それぞれアンチエイリアス積極的にかける感じにすると快適でした。