> However, on Mac OS X, when this is reversed and you set light text on a dark background, you get a fairly ugly effect where the text becomes overly bold, spilling out of its lines.
Wait, that's not supposed to happen. Most likely they're setting subpixel values without taking display gamma into account. This should be fixed properly in the rendering pipeline.
Well, as long as you use Hi-DPI (or "Retina", as Apple likes to call them) displays over your entire product line, subpixel rendering doesn't have as big of an impact anymore. I also suspect that's what's going on with the designers who are wont to disable subpixel rendering for their sites: they also mostly have Macs with Hi-DPI screens, so they don't see the benefit of subpixel rendering.
This goes out the window the moment you attach a second monitor for most folks. 1080p is very common; if we start talking about achieving retina at that resolution (say 220 DPI, a rough average across modern Macbooks), we're talking 10-inch displays. Even at 4k we're talking a max size of 19 inches or so before things get outside of Apple's ideal DPI.
I can't speak for you, but for my work and current eyeglass prescription, 27 inches is my starting point for comfort.
Even if I dislike it, Apple seems to have removed the global option to turn font smoothing off in Big Sur.
Yep, this whole article misses the point that the gamma wasn't being corrected for, so the opacity wasn't linear relative to the requested percentage.
Sadly, the only thing that ever did this correctly was Firefox, and it no longer does it. The proper method needs alpha values maintained for each subpixel in an image, not just each pixel, and it needs a specialized blit routine to composite with the background. This was agreed by most to be too complex, and, as other comments point out, DPI is increasing, so the easiest thing is to just disable subpixel rendering.
Maybe… but it’s been like that for years and years now (a decade, even?) so you can’t blame web designers for disabling subpixel smoothing in that scenario.
Wait, that's not supposed to happen. Most likely they're setting subpixel values without taking display gamma into account. This should be fixed properly in the rendering pipeline.