5

First, running the following command:

defaults -currentHost read -globalDomain AppleFontSmoothing

gives me back 3.

But the fonts nowhere look the way they used to look in earlier versions of macOS. I was using Yosemite before, and today I upgraded to Sierra. Below is the screenshot of Sublime Text editor.

enter image description here

They look OK in iTerm, but elsewhere - including browsers - font rendering is much worse.

So how can I make these fonts as crispy as they used to on earlier macOS/OS X versions? I guess it definitely has something to do with AppleFontSmoothing, or font anti-aliasing in general, but I have tried the many other options in this regard, that are as follows:

  1. Setting AppleFontSmoothing with and without currentHost flag, and restarting the macbook each time I make a change to see the changes.
  2. Ran the command sudo atsutil databases -remove to remove all the user installed fonts.
  3. Re-installing the font that I was using to get the desired result. (Note: I was using "Bitstream Vera Sans Mono")
  4. Tried to change font smoothing option for specific applications like com.apple.terminal but it didn't work either.

Note: a similar question.

  • Try turning on/off LCD Font Smoothing in system preferences? – owlswipe Jan 6 '17 at 12:19
  • Tried this as well, but no result. – Arslan Ali Jan 7 '17 at 4:13
  • On which Mac? Is it on an external display? – LH16 Jan 7 '17 at 15:33
  • @pjctech It's MacBook Pro 2012, non retina. – Arslan Ali Jan 8 '17 at 4:53
2
+50

Tried clearing the Font caches? Kind of an odd issue- I'm not sure if this is gonna help, but worth a try. Maybe it needs and refresher ;)

defaults -currentHost delete -globalDomain AppleFontSmoothing

sudo atsutil databases -remove and reboot, and maybe it needs and refresher. Its odd since it returns a 3, but maybe something is wrong with your defaults.

Re-pply after rebooting AppleFontSmoothing -int 3 and see if anything first without the string set, you already know that - but let keep the references for others:

defaults -currentHost write -globalDomain AppleFontSmoothing -int 3

  • @Arslan: did you solved it? – PJJ Jan 10 '17 at 23:13
  • no it didn't solve the problem for me. The problem still exists. – Arslan Ali Jan 12 '17 at 7:53
  • @ArslanAli: could you provide more info, maybe a screenshot and your GPU/Screen config. – PJJ Jan 13 '17 at 5:56
  • would you be more specific on what kind of screenshot? – Arslan Ali Jan 13 '17 at 7:03
  • I can award you bounty as the time is running out, and we can keep discussing it here or on chat. What you say? – Arslan Ali Jan 13 '17 at 7:04
0

A way to slightly improve the sharpness of the fonts is to increase the contrast.

System Preferences > Accessibility > Display > Increase Contrast
  • Did so, but it had not effect. – Arslan Ali Jan 9 '17 at 13:22
0

For Sublime Text, you can add this in the global settings:

"font_face": "Monaco",
"font_options":
[
    "no_antialias"
],
"font_size": 13,

Italics will look not very good though.

  • The said problem is system wide. – Arslan Ali Jan 10 '17 at 14:41
  • All the solutions I've found while Googling around were application specific unfortunately... – sdive Jan 10 '17 at 16:50
0

On Sierra 10.12.2 (maybe older versions too) there's a setting that seems to have an effect on fonts, system-wide (*):

AppleAntiAliasingThreshold

The default value is around 6 or 7. Apparently it defines the font size below which anti aliasing gets turned off. If you set a high value such as 40, all fonts smaller than 40 pts will not be antialiased, hence have sharp edges. This setting seems to affect multiple applications:

  • TextEdit
  • Eclipse (Java application)
  • Some GTK applications (git gui, gitk)
  • Maybe more!

Open a Terminal and type:

defaults -currentHost write -globalDomain AppleAntiAliasingThreshold -int 40

This will turn off aliasing for font rendering in many text editors.

You can delete this setting to revert to default.

Rather than setting a global preference, you can restrict it to some applications too (not tested by me) :

defaults write org.eclipse.eclipse AppleAntiAliasingThreshold 40

(*) Note: some applications have settings that may override this setting (e.g. Terminal has a Font "antialias" setting, Sublime Text has this "font_options" preference, ...)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .