How to make final form of Indic conjunct

mitradranirban
Posts: 41
I am digitalising an Indic typeface where some conjunct has s different form at the end of word. I know init feature can be applied on Bengali matras, but fina feature is probably for arabic only. How to create different final form of conjunct using open type rules? Should I go reverse contextual lookup before space or punctuation?
Tagged:
0
Comments
-
Yes, you have to perform the substitutions contextually. I have done this in some Bengali fonts, using an exception context where I perform the final form substition EXCEPT when followed by another Bengali letter. These substitutions should be associated with the rclt feature.
Important note, however: some Indic shaping engines—notably Microsoft’s and older ones from other companies—have a critical error that breaks this kind of contextual substitution: they process all GSUB at the Indic cluster level, which means a) they don’t process contexts that span cluster boundaries and b) every cluster boundary will trigger final form substitutions triggered by an exception context. I wrote about this back in 2013, and at subsequent meetings representatives from Adobe, Apple, Google, and MIcrosoft agreed that the best fix would be to apply the rclt feature across the whole glyph run, instead of individual clusters (rclt was selected because it was a relatively new feature, so the change would be less likely to affect behaviours in existing fonts).
This fix was applied in Apple’s Core Text engine and in HarfBuzz, but not by Adobe and Microsoft. Adobe are now using HarfBuzz in the main Creative Cloud apps, so this problem is only an issue in older Adobe software. I have not tested the most recent versions of Microsoft DWrite engine, but last I checked it was still a problem. Meanwhile, I believe HarfBuzz may have further relazed its GSUB processing to apply more features across the whole glyph run, but I still recommend using rclt, even though this means that such substitutions will be active by default and cannot be disabled by the user.]
[Note that this problem is limited to the older, script-specific Indic shaping engines. It is not an issue for Indic scripts shaped by the Universal Shaping Engine.]
Related:
Problems for Indic Typography
[PDF 2013. Ignore final comment about supporting fina for Indic scripts: that was written at the time when the joining behaviour features were still defined in terms of word position; they have since been revised to accurately reflect how they are actually used for joining scripts like Arabic.]
Fixing Indic2 OTL
[PDF 2014. Report of first OTL ad hoc working group meeting, explaining the rclt mechanism to fix the problem.]
5
Categories
- All Categories
- 43 Introductions
- 3.7K Typeface Design
- 811 Font Technology
- 1.1K Technique and Theory
- 628 Type Business
- 449 Type Design Critiques
- 547 Type Design Software
- 30 Punchcutting
- 137 Lettering and Calligraphy
- 84 Technique and Theory
- 53 Lettering Critiques
- 493 Typography
- 307 History of Typography
- 115 Education
- 71 Resources
- 505 Announcements
- 81 Events
- 106 Job Postings
- 151 Type Releases
- 166 Miscellaneous News
- 271 About TypeDrawers
- 53 TypeDrawers Announcements
- 117 Suggestions and Bug Reports