Date: Tue Nov 27 2007 - 05:06:19 CST
to answer the questions in a reverese order - Yes, if I was typing
Mongolian I would 'expect'(and if designing software for would have as
the objective) the Mongolian word to be vertical in the
search box and all of it to be visible.
Though slightly difficult to implement a vertical Mongonial word model
is concetually straight forward, which is not the case for say
combining Arabic and English on the same line. By straight forward I
mean unambiguous there are no problems with things line breaks, one
simply has to increase the vertical spacing between a line containing
vertical Mongolian and the lines above and below.
Such display problems are not unique to Mongolian, the most obvious
example being Tibetan that uses stacking. In a sense Tibetan is
also vertial words embedded in horizintal sentances.
The text string itself is straight forward - the question then is one
of display. If in both cases, vertical text and horizontal text, the
words are not rotated rather it is the spaces between the words that
rotate. Therefore maybe the solution is a new type of space which is
vertical by default however when embedded in horizontal text becomes
either LTR or RTL based on the text it is embedded in.
True if functions like ExtTextOut(), and widgets used for a search box
assume all text is horizontal then big changes need to be made - but
it should be noted these are not impossible changes, and should be
core not optional extras.
Quoting Peter Constable <firstname.lastname@example.org>:
>> From: email@example.com [mailto:firstname.lastname@example.org]
>> ... 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.
This message sent through Virus Free Email
This archive was generated by hypermail 2.1.5 : Tue Nov 27 2007 - 05:09:25 CST