Hacker News new | ask | show | jobs
by cutie 4993 days ago
This is well-known and by design.

Mac renders fonts optimized for "correctness", which can appear fuzzy at low resolution. Their new hi-res (~200dpi) screens solve the problem, you get correctness and legibility.

Windows and Linux tend to optimize for screen legibility at low resolution, resulting in increased sharpness. At hi-res, they'll likely not look as correct as the Mac rendering.

4 comments

> At hi-res, they'll likely not look as correct as the Mac rendering.

The higher res you go, the less differences there'll be between the two rendering methods. Fitting to the pixel-grid doesn't alter very much if the pixel grid is small enough.

Consider: Rendering a small font size at high-res is equivalent to rendering a larger font size at lower-res. If you look at the larger fonts on TFA's screenshot, e.g. "Node JS Design Patterns 101", there's proportionally much less difference (between Ubuntu and OSX) than at small sizes.

Freetype2 (the renderer used in linux) is of course capable of doing both (grid-fitting or not), and desktop environments like gnome make it very easy to choose whichever method you prefer.

[There are even intermediate settings...]

Not anymore in Gnome 3. :(
Actually still in Gnome 3... you just need to use the "advanced settings" tool.

[I don't agree with all their choices of what to call an "advanced" setting, but I think it's appropriate classification in this case.]

I know, and I'm using it for this, but the previous dialog was just way better and user-friendly. It had large previews and descriptions while the new tweak tool only has some uncommented options in a drop-down menu.
Gnome Tweak Tool still allows you to do this, among many other things. I consider it an essential part of the Gnome 3 desktop.
You can still edit ~/.fonts.conf by hand. If you need an intermediate level, then you're advanced enough to use vim and write the config yourself. The GUI shouldn't have to pander to fickle powerusers like you, it's supposed to make the PC EASY.
No, that's wrong. As resolution increases, the relative effect of hinting and fitting drops to zero. On high resolution displays they will look increasingly indistinguishable.
That means this is a well known issue?
Yes, it is a well-known issue with Linux and Windows :-)

Seriously, you have to pick one: you either deform letter shapes so that they fit the grid better, with the disadvantage that your line breaks change and/or your letter and/or word spacing look awful, or you ignore the grid until the last moment, compute what percentage of each pixel is covered by each 'infinite resolution' graphene, and color them gray accordingly, with the disadvantage that text looks a bit more blurry.

(technically, there is a third way: layout each character of each font at some set of fixed point sizes by hand, so that it fits the grid perfectly. The original Mac used that method; it became infeasible when the LaserWriter shipped)

There was a post on Coding Horror (Jeff Atwood's blog) about this in 2007. I'm not meaning to be snarky, but certainly for a certain class of people, this has been well-known for a while.

Edit: sorry, forgot the link, it's here: http://www.codinghorror.com/blog/2007/06/font-rendering-resp...

definitely a well-known, it's been the case ever since MacOS had antialiasing.

It's unlikely to be 'fixed' as it's a different philosophy between the OSs.

Also, as I alluded to in my previous comment, as resolutions increase in the future, the Mac OS approach is more correct in the long run. Though, it has come with the cost of fuzzy fonts and squinting for the last decade.
Does it actually make any difference? As a pixel size decreases, grid fitting becomes more accurate too.
This may not be true, as I've gotten more info above. Too late to change.
Seems like that's why they are investing more on Retina displays.
It's probably the vision that they had planned for years. Isn't that where we all want to go? I'm hoping that "Retina" becomes the new standard everywhere within the next few years.
As well known as printers have a higher DPI than monitors.