[OS X TeX] Yosemite font smoothing - partial solution?

Richard Seguin riseguin at earthlink.net
Mon Oct 27 00:17:55 EDT 2014


From my previous post:

> On Oct 25, 2014, at 3:12 PM, Richard Seguin <riseguin at earthlink.net> wrote:
> 
> I found out that anytime you change font smoothing parameters, nothing changes until you reset your machine.

Oops, I realized that this is false. Nothing changes in an application until you quit the application and then bring it back up again. It appears that the application handles fonts based on whatever the font smoothing parameter is set to at the time the application starts up. It turns out that this is good, and there is a reasonable workaround for Skim.

After a little more study I've concluded that when there is no system font smoothing (“Use LCD font smoothing when available” is toggled off but Skim’s own antialiasing option is turned on), Skim looks best on my non-retina panel, and in fact looks more or less like it always has. The problem is, fonts are then degraded in some other applications. But, if I could run 

defaults -currentHost write -globalDomain AppleFontSmoothing -int 0

which turns system font smoothing off, just before starting Skim, and then run

defaults -currentHost write -globalDomain AppleFontSmoothing -int 2

which turns system font smoothing back on, just after starting Skim, then Skim would look good with no system font smoothing, and all other applications would retain the benefit of system font smoothing.

It’s a little tedious to run these system commands in the terminal every time I start Skim, or equivalently, to open up the system preferences panel to toggle “Use LCD font smoothing when available” on and off, so I created the following Applescript, naturally named “Skim”, and placed it in the Applescript menu in the menu bar on top of the screen.

do shell script "defaults -currentHost write -globalDomain AppleFontSmoothing -int 0"
tell application "Skim"
	activate
end tell
do shell script "defaults -currentHost write -globalDomain AppleFontSmoothing -int 2”

Now all I have to do is start Skim from this script menu with a single click. Then font smoothing looks good in Skim, and other applications are not affected.

I hate having to do workarounds for things that should just work correctly. Nevertheless this solution is quick, convenient, and requires little thought on my part to execute.

TeXShop is a bit of a mystery. In contrast to Skim, I discovered that the PDF preview window in TeXShop, which I presume uses PDFKit just like Skim, seems to be unaffected by changes to “Use LCD font smoothing when available” — off or on it seems to make little or no difference on my panel. TeXshop’s internal font smoothing preference also seems to make little or no difference. I haven’t looked closely at Preview yet.

(Mail’s automatic spelling correction feature keeps changing “TeXShop" to “Teashop"!)

Richard Séguin





More information about the MacOSX-TeX mailing list