If complex script fonts are going to exist in Windows, then one thing they cannot afford to have is a sense of proportion

by Michael S. Kaplan, published on 2008/01/15 10:16 -05:00, original URI: http://blogs.msdn.com/b/michkap/archive/2008/01/15/7115675.aspx


I used to work across the hall from Shawn.

His office, in addition to the large cardboard cutout of Mr. Spock:

there are numerous pieces of Star Wars in the office -- a Sand-crawler, a Star Destroyer, a Death Star, an R2-D2, a TIE Fighter, a Darth Vader.

These various pieces all had one thing in common, something they shared with the big Mr. Spock.

They all had no real scale in common such that you could ever expect to see them fit inside each other or next to each other and be appropriately proportioned.

Luckily they had not been designed to sit alongside each other, which explains the situation so much more plausibly than poor depth perception at the Lego design facility!

And so, inevitably, I once again find myself with Douglas Adams on my mind, in this case from a bit of The Restaurant at the End of the Universe:

The Total Perspective Vortex derives its picture of the whole Universe on the principle of extrapolated matter analyses.

To explain--since every piece of matter in the Universe is in some way affected by every other piece of matter in the Universe, it is in theory possible to extrapolate the whole of creation--every sun, every planet, their orbits, their composition, and their economic and social history from, say, one small piece of fairy cake.

The man who invented the Total Perspective Vortex did so basically in order to annoy his wife.

Trin Tragula--for that was his name--was a dreamer, a thinker, a speculative philosopher or, as his wife would have it, an idiot.

And she would nag him incessantly about the utterly inordinate amount of time he spent staring out into space, or mulling over the mechanics of safety pins, or doing spectrographic analyses of pieces of fairy cake.

"Have some sense of proportion!" she would say, sometimes as often as thirty-eight times in a single day.

And so he built the Total Perspective Vortex--just to show her.

And into one end, he plugged the whole of reality as extrapolated from a piece of fairy cake, and into the other, he plugged his wife: so that when he turned it on she saw in one instant the whole infinity of creation and herself in relation to it.

To Trin Tragula's horror, the shock completely annihilated her brain, but to his satisfaction he realized that he had proved conclusively that if life is going to exist in a Universe of this size, then one thing it cannot afford to have is a sense of proportion.

And what does this all have in common with anything one would reasonably expect to read about here?

Well, over on the Microsoft Volt Users Community, the question from Khmerme was:

I hope that anyone who works for Microsoft sees this message and can provide some help. People who use Khmer Unicode are very excited that Windows Vista has included this Khmer language standard in the OS. However, this excitement is dampened by the fact that the script is so tiny that no one can read it. For example, go to www.google.com.kh on a Vista computer and see for yourself. However, other developers working with Unicode long before Vista, such as www.khmeros.info, have produced fonts that appear at a normal size. How did Vista get this wrong, and how can we fix it? An automatic update would be nice. Currently, other developers provide fixes, but they are difficult to install. Plus, it's very hard to promote the use of a "standard" when the standard comes defective. From a business perspective, this also hurts Microsoft. This is the main reason that I have not yet updated to Vista.

Please advise.

Chris Fynn answered this cry for assistance with some of the explanation:

Hi "Khmerme"

Can't you use your old Khmer Unicode fonts in Vista applications without the fonts becoming small?

The same problem exists with "Microsoft Himalaya" the Tibetan script font in Vista. I think these fonts were made 'small' so that they work as system/UI fonts in Windows menus, dialogue boxes, and things like Windows Explorer without causing problems. Other Unicode Tibetan script fonts display at better size in applications.

There really need to be other (larger rendering) fonts as the default in text editors, web pages, office applications, etc.

The problem with Tibetan - and I guess with Khmer - is that some combinations have a large vertical height/depth - and, in order to squeeze these into the same number of vertical units as a latin letters, Tibetan or Khmer glyphs at the same point size end up being tiny in comparison.

Fonts can of course be made where the ascender to descender distance is greater than the font UPM so that at any nominal point size they will render at the same apparent visual size as Latin glyphs. Of course then the line spacing has to be greater than the nominal point size to prevent clipping or overlapping lines. I guess MS think this could cause problems for UI fonts used in situations where line space is fixed.

However larger rendering fonts for Tibetan and Khmer seem to work OK as UI fonts in Linux (Gnome & KDE).

In Windows you can increase the display size of UI fonts - Khmer and Tibetan then become readable but Latin is then too big.

- Chris

The problem is that these are fonts that contain characters across more than one script which, to put it quite simply, are not designed to be viewed alongside each other.

And they end up looking about as well next to each other as the R2-D2 that was about the same height as the Sand-crawler, or the Mr. Spock that was bigger than anything in the office from the Star Wars universe, even the items designed to contain thousands of normally sized people.

Thus is kind of the same issue I mentioned in Mangal mangle?, with the argument about UI font compromises being the main reason for the strange scaling issues, though this seems to not be the full story here since several people have stated there are real problems using fonts like DahnPenh or Microsoft Himalaya from Vista as a user interface font because it would be increased in size so much to be reasonably visible.

So they become UI fonts that cannot be used for a UI language?

By the way, let me know if you spot the logical error in my examples below before you read about it toward the bottom of the post!

Of course the answer is that a UI font is meant for use anywhere in the UI, not just as the UI language. But do people find the use of these fonts in UI like Regional and Language Options to be particularly readable for Khmer:

(by the way, does anyone want to hazard a guess as to what the hell is going on with the digits in the Khmer summary view?) 

or Tibetan:

or Mongolian:

all of them in UI seem kind of insufficient and scaled pretty poorly compared to the surrounding Latin script text.

I can't tell if it looks better or worse in Character Map:

I guess they get away with it by making the Latin script characters much bigger so they are just as ugly but you can't necessarily tell in isolation.

But shouldn't a "UI font" try to balance these things, so that they look good alongside each other?

Perhaps there would more of an excuse for the poor scaling in all of the Lego models in Shawn's office -- since each model was a separate Lego package, constructed separately from each other one. Similarly, if two different fonts did not scale too well together, then who cares? They are two different fonts, after all!

But in this case, the Latins exist in each of these fonts. So why shouldn't they be designed to fit together well?

By the way, did you spot the logical error? If not then read about it now....

Even if the Latins in these three fonts had been designed to scale properly with the other script the font contains, on my English Vista system those are not the Latins that are used -- my own UI language font choice is used. So the real solution to handle such cases would have to involve proper inter-font scaling.

Though to learn the lesson from Adams, if someone in computer typography ever does solve these scale problems completely, we might have to fear for the annihilation of their brain due to having such a fine sense of proportion. And we don't to lose any good typographers! :-)

This post brought to you by(U+17d6, aka KHMER SIGN CAMNUC PII KUUH)


# Rithy on 16 Jan 2008 11:43 PM:

Thai shows very clear and readable in Windows. Thai also need more vertical space than Latin (Around 4 vertical lines). Khmer need around 5 vertical lines! Why does Khmer display too small?

# 28481k on 17 Jan 2008 8:54 PM:

@Rithy Thai doesn't seem to be very readable to me (but I'm biased as I am not a Thai but a Chinese :) ).  However, unlike Khmer, Thai doesn't need consonant stacking and so even in smaller font they can simplify the lines to make the glyphs a bit clearer.  Languages like Khmer and Tibetan may have two or more characters stack one on top of the other, they certainly need more vertical space to show them!  For me, I use a large-scaled OSS Khmer font intended for UI called Khmer OS Muol Pali to display Khmer just in case.  However, the scale is so ridiculously large that their 12 pt glyphs look more like 24 pt!

@Michael  Well, it's certainly a big problem for typographers to hint the right proportions in mixing scripts.  Especially when you have places like China where many scripts exist, and three of them other than Chinese or Latin-based script actually used in official level (Arabic-derived Uyghur, Tibetan and Old Mongolian).

Methinks at the very minimal level, those default fonts should be designed to mix with Latin well.  

@Chris I think you guys did a respectable job in creating Tibetan fonts that strike a right balance between the glyph vertical height and the glyph size.  However, I wonder why those fonts intended for Dzongkha Linux seem to suffer from the same problem as Microsoft Himalaya?  Their Latin fonts are also small respective to their points!


referenced by

2008/05/18 The song[ and the answer] remains the same

go to newer or older post, or back to index or month or day