Wednesday, March 21 2007

Dear Microsoft,

Contrary to your claim, most web sites do not in fact explicitly specify their language setting in a fashion compatible with your auto-detection.

For instance, my site is carefully specified as UTF-8, and occasionally contains some Japanese text. Once someone activates the Windows features that let them see Asian scripts at all, IE renders the kanji on my site in a Simplified Chinese font, and the kana in a Japanese font, unless the first font in the CSS font-family list contains all of the characters used on the page.

Most browsers will fail over to the alternative font-family you’ve specified, but not IE. It goes straight to the options set in the Font menu in Internet Options. And it looks like crap.

Unfortunately, the latin alphabets in most kanji fonts are significantly less readable online than Verdana and Georgia, and the Simplified Chinese fonts not only don’t look good alongside them, they might be the wrong character entirely. That’s why CSS is supposed to do this sort of thing for you in the first place.

Why start poking at this problem now? Two reasons: first, I have Vista running on my MacBook to test it out for corporate deployment. Second, Vista is finally capable of anti-aliasing (some) kanji fonts, and they supply a very screen-readable Japanese Gothic font called Meiryo (also available in Office 2007, apparently). I’d like to have Meiryo used to render kanji and kana on any machine that has it installed, but continue using Verdana and Georgia for everything else. Safari and Firefox, yes; IE, not a chance.

And here I was all set to say something nice about IE7 for a change, after I discovered that the new page zoom feature actually does The Right Thing, scaling the entire page layout up with high-quality font rendering. The wrong fonts, but nicely rendered!

[Firefox’s font rendering quality is crap, but it’s consistent cross-platform crap, so I suppose that’s okay]