In macOS 10.14 Mojave Apple turned the «LCD font smoothing» setting (which turned a subpixel antialiasing on) to «just font smoothing» setting. So now all the text is rendered just antialiased that looks worse on not-retina displays. How to enable the subpixel antialiasing back?
2 Answers
- Open the Terminal application
Type or paste
defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO
- Press ↩︎ (Enter)
- Restart the computer
To return it back, do the same but instead type in the terminal
defaults write -g CGFontRenderingFontSmoothingDisabled -bool YES
Update on 2019.10.12: the solution works in macOS 10.15 too.
Update on 2019.12.24: you can turn subpixel antialiasing only in a specific application. To achieve it, do the same but instead type in the terminal
defaults write com.evernote.Evernote CGFontRenderingFontSmoothingDisabled -bool NO
where com.evernote.Evernote
is the identifier of the application. See how to get it in this question. Then restart the application.
To revert it, type in the terminal
defaults delete com.evernote.Evernote CGFontRenderingFontSmoothingDisabled
You can even enable subpixel antialiasing everywhere and disable in a specific application (it's left as an exercise for the reader).
-
1No need to restart? Just Logout/login? – I read that feature was gone for good. Not using Mojave: can you post pictures of the difference for proof? Sep 29, 2018 at 13:28
-
2Any app you launch after that will be properly anti aliased. Restart is needed if you want to refresh the whole user interface.– AntwanAug 2, 2019 at 13:19
-
Testing this on my Apple TB Display on Mojave: FontSmoothingDisabled FALSE looks more pixelated and less smooth than with TRUE, which is counter to what you'd expect.– benwiggyDec 21, 2019 at 14:18
-
@benwiggy I expect a subpixel antialiasing. It may look good or bad depending on the monitor.– FinesseDec 22, 2019 at 7:50
-
2I remain unconvinced that sub-pixel rendering exists on MacOS in Mojave and later.– benwiggySep 6, 2022 at 7:08
To add to the accepted answer, you may need to turn off the new "just font smoothing" implementation after enabling subpixel antialiasing. This solves the pixelated text issue user benwiggy commented about on a 13.3" mid-2012 MacBook Pro (1280 x 800 non-retina screen) and especially for very small font sizes. By leaving the font smoothing option enabled simultaneously with subpixel antialiasing, the text weight appears inconsistent and "pixelated".
I doubt screenshots will do the visible difference justice, but here are some comparisons anyway. (All screenshots were taken after defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO
and logging out to enable subpixel antialiasing systemwide.)
-
1Your screen shots show no evidence of subpixel rendering/anti-aliasing. See en.wikipedia.org/wiki/Subpixel_rendering for example screen shots. Jan 26, 2020 at 13:51
-
1You’re right. Unfortunately, subpixel rendering doesn’t work properly in Catalina. In 10.15, the command just makes fonts appear thinner. Of course, it is suggested to use the new font smoothing implementation if smooth text similar to previous versions is what you’re after. Some others wrote about it at discussions.apple.com/thread/250998388 and at reddit.com/r/MacOS/comments/dmntf5/comment/f9mdqia– alyxJan 27, 2020 at 20:50
-
1@AlexLiu Using Tinkertool bresink.com/osx/TinkerTool.html, I enabled FontSmoothing on Catalina and set
Strong
smoothing which I prefer. Thought I've not quite understood what is the technical difference between the three levels.– IceManApr 2, 2020 at 2:34 -
1That "Use font smoothing when available" is not there for me on macOS 11.1.– nrooseJan 21, 2021 at 19:03
System Preferences -> General
panel.