RE: Display of Mongolian in Arabic or Hebrew documents

From: Peter Constable (petercon@microsoft.com)
Date: Tue Nov 27 2007 - 01:48:20 CST

  • Next message: vunzndi@vfemail.net: "RE: Display of Mongolian in Arabic or Hebrew documents"

    > From: vunzndi@vfemail.net [mailto:vunzndi@vfemail.net]

    John:

    > ... Whislt there are some examples of horizontal runs of Mongolian in
    > Chinese text, horizontal is not the norm. The norm is for words to be
    > vertical even though the sentances maybe be horzontal...

    This is all stuff I have never called into question at all.

    But if your intent is to back up your earlier suggestion, viz. that "default behavior should be that individual Mongonlian words be displayed vertically in horizontal texts", then I continue to say that it would not have been a good choice for general text-drawing implementations (e.g. functions like ExtTextOut()) to add Mongolian support in this manner since it is decidedly more problematic for both horizontal and vertical scenarios.

    The text must have a baseline. You can allow some limited amount of cross-stream flow perpendicular to the baseline, but the baseline determines prevailing direction overall. You could have Mongolian syllables / words flow in a cross-stream manner, but you certainly don't want that done in vertical layout. But if that's the default, then it means that each syllable / word segment will need to get rotated for vertical layout. That would likely represent an entirely new layout mode for an implementation. Even if it were straightforward to implement that cross-stream flow for syllables / words, the most important scenario for Monglian users, vertical layout, would become one that's more difficult and hence slower to appear -- this is probably the way to make vertical Mongolian layout the most difficult to implement.

    But cross-stream flow for syllables / words is not straightforward. Neither is it obviously the best choice for a default text-drawing mode. Keep in mind that the default is what happens unless specified otherwise, and so it's what happens in all existing code. Now consider multilingual text in application UI: if you type a Mongolian word into the search dialog of your favourite word-processing app, would you really expect that word to be laid out vertically in the horizontally-oriented text box? Either most of the word would be clipped, or the text would have to be scaled down and would end up being utterly illegible. By using the text-drawing API in its default mode, though, one or the other of those is almost certainly what's going to happen.

    Peter



    This archive was generated by hypermail 2.1.5 : Tue Nov 27 2007 - 01:51:11 CST