From: Richard Wordingham (richard.wordingham@ntlworld.com)
Date: Tue Aug 23 2005 - 18:40:54 CDT
John Hudson wrote:
> Richard Wordingham wrote:
>>> In the OpenType model re-ordering is specifically NOT handled at the
>>> glyph level, but at the character level.
>> Do you mean 'OpenType' or something like 'Uniscribe/OpenType' or
>> 'Microsoft'?
>
> I mean OpenType. The OpenType GSUB and GPOS lookup types are not designed
> for glyph *re-ordering*. There is no mechanism within OpenType to say
> 'take this sequence ABC and rearrange it to ACB'.
I quote from the Context Substitution Format 1 subsection of
....open_type\Typography\otspec\gsub.htm:
'For example, if a client is to replace the glyph string <abc> with its
reverse glyph string <cba>, the input context is defined as the glyph
sequence, <abc>, and the lookups defined for the context are (1) "a" to "c"
and (2) "c" to "a". When a client encounters the context <abc>, the lookups
are performed in the order stored. First, "c" is substituted for "a"
resulting in <cbc>. Second, "a" is substituted for the "c" that has not yet
been touched, resulting in <cba>. '
More generally, I would be thinking in terms of a 'ligature substitution'
replacing BC by D (in the context of A, if you wish) followed by a 'multiple
substitution' D to CB. The mechanism is clunky, but it exists. What could
get very confused is cursor motion over the displayed string.
Richard.
This archive was generated by hypermail 2.1.5 : Tue Aug 23 2005 - 18:41:49 CDT