Peter Kirk wrote:

I should point out in return that I am not advocating glyph composition for CJK-type scripts, but for scripts like Hebrew in which fairly simple positioning rules can be used, rules which have already been successfully implemented in OpenType fonts like SBL Hebrew.

For scripts where the composition rules are particularly complex and where you need to apply a lot of contextual positioning rules in order to build up ligatures, there is often a considerable performance disadvantage when compared with a font that has pre-composed ligatures instead.

A font with pre composed ligatures is also not necessarily that much
larger since you can often implement many of the glyphs as composite
glyphs made from a library of component glyphs.  (In other words
pre-positioning & combining the parts.) Since the component glyphs are
effectively subroutines and composite glyphs have pointers to their
components file size is reduced.

Including a lot of positioning rules for rarely if ever used
combinations may not be a good idea. If you add a feature to an OpenType
font then it seems a call is made to the layout engine for that feature
for each cluster of text - even if it turns out that the feature does
not apply or is not used for that cluster of text. The more features you
have,  the more calls are made. So there is a trade off between features
and performance.

In current layout engines, substation lookups seem to run *much* faster
than positioning rules - and it is usually easier to group many
substitution rules into a single feature, than it is to group
positioning rules - so less features are required resulting in fewer
separate calls to the layout engine.



- Chris









Reply via email to