25

I have a 24" HP LP2475w at my home and 23" Apple Cinema Display at work. Today when I turned on my laptop at work, I noticed that all fonts look perfect (after having an issue with rendering for the past two days). I thought the issue somehow got fixed and happily went on with my day.

Later when I came home, everything still worked, because I didn't turn off my MacBook. This is how it looks (correct), even on my home LCD

correct

but when I quit the Terminal.app (or any other app for that matter) and launch it again, while the 24" is still connected, the fonts get ugly

ugly

Notice even the background color is different, which doesn't make any sense at all, since the screenshots are taken about 15 seconds apart.

When I disconnect my LCD the Terminal still looks ugly, until I relaunch it, then it looks ok again.

The important thing here is, that I've been using the 24" LCD for the past year and never had this issue, it just started happening without me changing anything.

Is it possible, that my MacBook is somehow having trouble communicating with the LCD when the app starts? I would understand if this happened to everything that is displayed on the 24" LCD, but it happens only to apps that are launched when the LCD is connected.

Even if I quit all the windows in the terminal and open new ones it still looks ok, until I actually quit the application itself and relaunch it.

2
  • Which display is your primary one (the one with the menu bar)?
    – MattiSG
    Jan 17, 2012 at 7:57
  • @MattiSG I only use one of them at a time, and I always set the external LCD as primary. Jan 17, 2012 at 8:23

6 Answers 6

39
+50

You should try adjusting font smoothing globally. Open up terminal and type:

defaults -currentHost read -globalDomain AppleFontSmoothing

Depending if it's enabled or not you might get a message such as:

The domain/default pair of (kCFPreferencesAnyApplication,
 AppleFontSmoothing) does not exist

(which is actually good, since it tells us it's not set, and why you have the issue).

Next, type:

defaults -currentHost write -globalDomain AppleFontSmoothing -int 2

If it doesn't look any different, worse, etc. or want to adjust it even more replace the number '2' with '1'.

To remove the global setting you can use:

defaults -currentHost delete -globalDomain AppleFontSmoothing

*Hopefully this solves your troubles.

4
  • wow, thanks for the solution @ioi I had the same issue when upgrading to Mountain Lion...I was wondering if there's any way to change that from System Preferences?
    – zanona
    Jul 31, 2012 at 10:41
  • There could also be a key for it in ~/Library/Preferences/.GlobalPreferences.plist.
    – Lri
    Sep 3, 2012 at 2:41
  • 2
    What is the difference between 1 and 2 then?
    – Sam
    Sep 10, 2012 at 11:18
  • 5
    Note that (1) removing the global setting as shown above is same as checking System Preferences > General > Use LCD font smoothing when available, (2) unchecking this is equivalent to setting -int 0, (3) a value of 0, 1, and 2 is no, light, and medium font smoothing, and (4) setting a preference in System Preferences overrides the terminal commands above (and vice versa). I have a Mac Pro with OSX 10.6.8 connected to NEC LCD2490WUXi working great out of the box, but when I purchased a new 15" MacbookPro retina the same monitor on OSX 10.9.1 messes up text. Setting -int=0 helped somewhat.
    – ggkmath
    Feb 19, 2014 at 13:51
6

The first image is using sub-pixel anti-aliasing, which is takes advantage of the way the RGB sub components of an LCD monitor happen to line up. You can see this by using "DigitalColor Meter", or any other utility, to zoom in on the pixels.

The second image is using full-pixel anti-aliasing, which is 3x blockier, but works on non-LCD displays and LCD displays which use a different sub-pixel ordering.

At least in Mac OS X 10.6, this is controlled by the Appearance control panel and the "Use LCD font smoothing when available". The key is "when available". The OS must correctly detect when your display is an LCD.

A peculiar quirk that I've noticed is that if you change that setting, it does not immediately change the fonts already on the screen. You have to at least close and reopen a window, sometimes quit and restart an application, for the new setting to apply.

My guess is that you have "LCD font smoothing" turned on, but you are moving back and forth between a display which OS X recognizes as an LCD and one which it does not.

2

This is OSX "Text Smoothing" I believe.

In "General" preferences, the last option is to turn off text Smoothing for font sizes below a certain size. I guess that value has changed to one higher than your current font size.

1
  • I have it set to the lowest - 4, but it doesn't seem to change anything when I turn it on and off. Jan 14, 2012 at 23:24
1

My brand new Samsung C49RG90 (5K) connected in Picture-by-Picture mode with the two display-port outputs of my MacBook Pro exhibited awful fonts. I found out that by simply reducing the default sharpness setting of the monitor from 60 to 50 fixed everything - no need to tweak AppleFontSmoothing or CGFontRenderingFontSmoothingDisabled.

If your monitor has a sharpness setting, try to tweak that.

0

Have you per chance enabled any specialized settings via the Developer Tools? Such that your computer would now be showing HiDPA resolutions? You can verify quickly by going into System Preferences > Displays and you can see what kind of resolution setting your computer is using.

4
  • No I haven't changed anything. I'm using my monitor's native 1920x1200. It seems to happen in all applications that I restart, so something must've changed since I last rebooted my MacBook. Jan 14, 2012 at 13:06
  • Very likely, have you tried restarting the computer and reseting the PRAM (NVRAM)? Maybe that would reset your computer back to defaults. Otherwise you could see if the issue occurs under another user on your computer/test account.
    – Andrew U.
    Jan 14, 2012 at 13:10
  • I was just going to recommend a new user account as Andrew does.
    – Richard
    Jan 14, 2012 at 14:08
  • I've actually did a complete system wipe, reformatted the whole disk, reinstalled and the issue still persists. I didn't recover any backups, just made a clean install of Snow Leopard and direct upgrade to Lion. Jan 15, 2012 at 12:11
0

In our case with LG HDR WQHD display we needed to uncheck High Dynamic Range in display settings.

You must log in to answer this question.

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