On type & fonts

The different faces of type showed how different the same font may look not only on different platforms but even on the same platform – depending on which font rasterization method the user had chosen.
Now, a few months later, I am able to summarize my former conclusion like this: Microsoft still goes by the assumption that the not trivial-to-make information called hinting is essential for font rasterization. Apple however has demonstrated that it is possible to rasterize fonts well regardless if they are hinted or not. Apple's demonstration suggests that it is time to reconsider what to judge, not "font quality" any more but "rasterizer quality". Not asking: Is the font well hinted? But asking: Does the rasterizer treat unhinted fonts well?

There's a light

In the meantime, Miguel Sousa has written about DirectWrite's improved ClearType version, Stephen Coles has revived the font rasterization discussion, and the beta versions of both Internet Explorer 9 and FireFox 4 are now using (on Windows 7 and Windows Vista) DirectWrite & its improved ClearType version rather than (as they do on Windows XP) GDI & its old ClearType version. It was time for some more tests. For these I chose the kind of fonts which gave worst results on Windows XP, unhinted TrueType fonts,[1] and that way tested not "font quality" but "rasterizer quality". With a surprising result.[2]

Three weights, top to bottom: ExtraLight, Regular, Bold of an unhinted TTF. Rasterized with, left to right: GDI-ClearType (Windows XP), DW-ClearType (Windows 7), the Apple way (OSX 10.5.8), each time in FireFox 4 beta 7:
As regards the representation of weights, DW-ClearType may get closest to the print appearance. The ExtraLight is unsuited for use on screen but useful to highlight some peculiarities of the older GDI-ClearType and DW-ClearType's improvement.
GDI-ClearType (left column): This earlier ClearType version does not apply smoothing in vertical direction where it only knows either black or white. Depending on the final positioning of vertical extrema in relation to the pixel grid, horizontal bars or curve elements may get rasterized too thin (and even disappear as in a couple of ExtraLight letters) or too thick (as in the Regular uppercase H).
DW-ClearType (middle column): The rasterization is lighter than the Apple rasterization and is not as 'sharp' as GDI-ClearType rasterization is – or DW-ClearType rasterization would be if the font were hinted. Going by the assumption that text is to be read, when reading means grasping word or text images rather than counting pixels, I consider this result as surprisingly good. Even in comparison to Apple rasterization.
Apple rasterization (right column): Please see the earlier note.

Darkness too

If there were but OSX and Windows 7 (and Vista), it would not be necessary to spend a thought on hinting.
Sadly, Windows XP is still the most popular version, and rasterization on Windows XP is problematic for two reasons: First, its GDI-ClearType needs some hinting so it can rasterize fonts in an acceptable way. Second, GDI-ClearType is but one of three rasterization methods – GDI-ClearType smoothing (subpixel positioning), Standard smoothing (greyscaling), and no smoothing (pure b/w). Now in reverse order, no smoothing is most demanding in terms of hinting, Standard smoothing less so, and GDI-ClearType smoothing even less.
In short: Windows XP's GDI-ClearType lacks the rasterization quality of Windows 7's DW-ClearType. Its two alternative rasterization methods are even worse. And on top of this the choice of a rasterizer is up to users. At the same time, foundries are assuming that users chose the right one – GDI-ClearType – and are preparing webfonts accordingly. Since users' choice is not predictable, though, going by this assumption is hardly more than gambling.

But with a little help

Type foundries' mere assumption could turn into reasonable expectation, though, with help from browser developers. Browsers could adopt an approach similar to that of Internet Explorer 7/8/9 and Firefox 4:

1. Use DirectWrite on Windows 7 (and Vista).*/**2. Force on old ClearType on Windows XP.**

* If DirectWrite is not an option for a browser developer yet, then forcing on GDI-ClearType on Windows 7 (and Vista) would be a compromise.** If not for all websites then at least for those that make use of downloadable fonts (CSS with @font-face), as Firefox 4 does.

If they did, then webfonts with just a little hinting whould look well even on Windows XP.[3] And foundries could go by their (now almost safe) assumption that Windows XP's GDI-ClearType is the minimum rasterization quality that webfonts might face in browsers – Standard and no smoothing being ruled out. Which would constitute a more predictable situation than the one we have to cope with today.
Forcing on GDI-ClearType and possibly making use of DW-ClearType adds value to browsers too: All above-mentioned browsers support downloadable fonts, i.e. webfonts. Webfonts however do not have the level of hinting which Microsoft's core fonts offer and, very few exceptions granted, never will. Webfonts expect GDI-ClearType as the minimum of rasterization quality. Browsers which do not meet this expectation risk that, depending on users' rasterizer choice, websites that feature webfonts render worse than they were supposed to – which makes such browsers look bad in comparison to those that do meet this expectation.

Browser statistics indicate that as few as five browsers can make a big difference: Internet Explorer, Firefox, Chrome, Safari, Opera.[4] Two of them – Internet Explorer since version 7 and Firefox starting with future version 4 – already do so. Chrome, Safari and Opera too could take advantage by adopting this approach with upcoming versions.
I am optimistic, since users update their browsers pretty much in time, that in a couple of months we might witness a more webfont-friendly infrastructure even on Windows XP. And which browser wants to lag behind Internet Explorer?

Further reading

† Many thanks to David Berlow for pointing out an error and flaws which hopefully are corrected now.

[1] Test fonts are glyf table based OpenType fonts and have no instructions tables nor instructions in the glyf table. In the gasp table, bits for gasp_dogray and gasp_symmetric_smoothing are on (encouraging use of Standard and ClearType smoothing), while bits for gasp_gridfit and gasp_symmetric_gridfit are off (discouraging gridfitting in context of both Standard and ClearType smoothing). Please see the specification for details.
Also see John Daggett's example for the effect of encouraging or discouraging gridfitting via gasp table settings.

[2] This note is about the rasterization of unhinted fonts with GDI-ClearType and DW-ClearType. It is not the place for samples of hinted fonts or rasterization with Standard or no smoothing.
For the image I chose a size which is most representative of each rasterizer's peculiarities and GDI-ClearType's in particular. A wider range of sizes, giving the full picture, will follow later.

[3] The phrase 'just a little hinting' deserves a clarification. It is not about quality of hinting but about hinting philosophy. And it refers not to quantity of hinting but to the type of hinting. It does not ask: Is this hinting executed well? Nor: Is this enough hinting? But distinguishes different types of hinting: Hinting for b/w, hinting for Standard smoothing, hinting for ClearType. And the last one is called 'just a little hinting' above.

[4] Browser statistics differ as regards actual values, just compare those of W3 School, NetMarketShare and StatCounter – alongside this comment. Where they all agree, and this alone is relevant here, is that there are no more than five important browsers.