Fonts on Linux have had a chequered history. Mostly, they've been bad. Once, there was an excuse for this: GNOME and KDE were unable to render anti-aliased text, and there was a paucity of decent free TrueType fonts. Now, with Xft, Freetype and Bitstream Vera fonts things are different.

Unfortunately, it's hard to find Linux distributions that have gone the extra mile to make the fonts look good by default. Let's take a brief look through default fonts in various operating systems.

Mac OS X offers a great default, which looks good on all modern machines. No user configuration required.

Windows default is blocky, as there's no anti-aliasing to speak of, but the hinting on the fonts is excellent and they're crisp. If you dig a bit and find the crazily hidden Display properties - Appearance - Effects dialog, you can turn on ClearType.

Windows ClearType offers a pleasing level of font smoothing. Now, let's look at the GNOME default, taken from a screenshot on the GNOME 2.12 start page.

This is pretty much how default GNOME looks on any machine. In particular, it's the default look you get when you install Ubuntu. This corresponds to a setting of full hinting in the font preferences, with the font Bitstream Vera Sans. The quality of the type, however, is poor. It has a spidery and ungainly quality to it.



In and of itself, Vera is not an ugly font. There's some combination of the font's hinting and the Freetype hinting engine that conspires to make things ugly. On my desktop I've tried to work around this by altering the font settings somewhat.

The effect isn't perfect, but a lot better to look at. The font is Bitstream Vera Sans as before. To get this, I had to switch off any hinting then slowly play with the DPI setting until I get letterforms that rendered neatly.

Alas, this brings problems of its own. For a start, not all popular GNOME applications respect this setting. Firefox often gets its own idea about such matters as screen DPI, and OpenOffice.org2 completely ignores my hinting preferences and gives me nasty looking menu bars. Murray Cumming's recent GNOME for bad eyesight blog post also gets into many of these issues.

For most users without time or inclination to hunt this down the choice is either to live with the ugliness, or opt for an operating system that gets it right.

(Lest I seem churlish here, I should celebrate the amazing work done with internationalization on the Linux desktop, which continues to bring computing access to many in the world for whom choice is a luxury.)

There is one Linux distribution that makes a reasonable job of good-looking fonts. The Fedora Core 4 distribution ships with a different default font and out of the box settings giving reasonably attractive letterforms. Courtesy of OSDIR, here are GNOME and KDE screenshots. However, I'm pretty sure it doesn't solve the rest of the font integration issues.



I'm no typography expert, but I find that good-looking fonts enable me to work more effectively. And on the advocacy side, I want my Linux desktop to look as good or better than the OS X and Windows alternatives.

Lots of great effort was made getting us to the point of anti-aliased rendering and the licensing of the Bitstream Vera Fonts. Having got this far, it seems a shame not to hunt down the remaining irritations in font handling.

Further reading: