On Fri, Feb 20, 2009 at 12:31:49PM -0700, Idris Samawi Hamid ادريس سماوي حامد wrote:
On Fri, 20 Feb 2009 11:57:22 -0700, Hans Hagen
wrote: Khaled Hosny wrote:
Currently, when defining a font feature one has to enable all features by hand which is IMHO not very user friendly as it implies prior knowledge about OpenType font features and the meaning of each one, not every Arabic user, for example, knows what does 'init', 'medi, etc. ligatures mean yet to know that he must enable them to get proper font rendering. I think some font features should be on by default, so that \definefontfeature[script=arabic] should be enough to get an Arabic font rendered correctly with the default features as its designer intended (designers assume that certain will be on while other are off by default, like liga vs. dlig), and if some one wants to disable a certain default feature he can turn it off, not the reverse.
Hmm, not sure if this is a good idea, see below.
Microsoft's OpenType features list page (http://www.microsoft.com/typography/otspec/features_ae.htm) gives a "UI suggestion" for each feature noting if it should be on by default, I think those are what most OpenType enable by default (at least the ones I tested).
i've been thinking of a features=default option (as there is already features=yes|no)
Maybe we can have a features=ms_arabic
instead of defaulting to MS' recommendation. So in the final high-end user interface we can have keys like
featureset=ms_arabic
I think the 'ms' part is't really needed, we can just call it"arabic", or are we going to have more Arabic feature sets?
But I agree with Hans that this is a matter that needs more thought. For example, Traditional Arabic mixes OpenType and older M$ specs in Uniscribe, so just plugging in the default features that M$ suggests is not sufficient for, eg, vowel function in Tr Ar.
That is beyond OpenType support, since Traditional Arabic is essentially broken at many levels, even when Uniscribe is used (vowel marks break lam-alef ligatures for example), Ms Arabic fonts are special case since they were developed long ago before OpenType and aren't the best examples.
Also, what about Arabic fonts on the mac, so they follow the same specs as M$?
AFAIK, Microsoft's Uniscribe is the reference OpenType implementation, and I assume that Apple's OpenType implementation follows its recommendations (I can't test that).
We've still got lots to do before settling on a very high-end interface so there is time to think about this some more...
Of course, we aren't in hurry. Regards, Khaled -- Khaled Hosny Arabic localizer and member of Arabeyes.org team