Arabic-style script with initial, medial etc. forms

Get help with FontCreator here. Please do not post feature requests or bug reports here.
Post Reply
Hastrica
Posts: 2
Joined: Tue Jul 02, 2019 7:02 pm

Arabic-style script with initial, medial etc. forms

Post by Hastrica »

Hi everybody.

I've made the following alphabet for a language I've created (I'll gladly tell you all about it in case anyone is interested) and now I'm trying to turn it into a font, make it typeable, so to speak.
RjBmvZj.png
RjBmvZj.png (621.79 KiB) Viewed 4271 times
It works very much like Arabic (the visual influence should also be obvious) in that it's cursive, with most letters changing their shape depending on their position. Differently from Arabic, there are six forms (isolated, initial, medial, final, pausal, isolated pausal) and it is left-to-right.

Now, I've bought FontCreator precisely because I read it offers a way to make this font work, and I have heard that OpenType and contextual substitution features exist, but I'm afraid I've absolutely no clue where to start. The six glyph variants are all there, made as SVGs in Inkscape, and I succeeded in importing at least the isolated forms into FontCreator and mapping them to glyphs, but how do I go from there? How do I arrive at typing indvidual letters and getting something like this?
Hg50xvT.png
Hg50xvT.png (30.22 KiB) Viewed 4271 times
I've had a rummage around this site and saw a bunch of examples with ligatures, lookups and a bit of code, but that didn't help me much. Not that writing code to get this done would be a problem.

Thanks in advance!

David
Last edited by Bhikkhu Pesala on Tue Jul 02, 2019 7:26 pm, edited 1 time in total.
Reason: Added images inline. Offsite images are less convenient.
Bhikkhu Pesala
Top Typographer
Top Typographer
Posts: 9873
Joined: Tue Oct 29, 2002 5:28 am
Location: Seven Kings, London UK
Contact:

Re: Arabic-style script with initial, medial etc. forms

Post by Bhikkhu Pesala »

You may have to work out the code on your own as most of us don't use Arabic scripts.

This thread on creating a fraction feature demonstrates contextual substitutions.
My FontsReviews: MainTypeFont CreatorHelpFC15 + MT12.0 @ Win 10 64-bit build 19045.2486
Erwin Denissen
Moderator
Moderator
Posts: 11108
Joined: Fri Oct 04, 2002 12:41 am
Location: Bilthoven, The Netherlands
Contact:

Re: Arabic-style script with initial, medial etc. forms

Post by Erwin Denissen »

Shaping engines will automatically perform init, medi, and fina features if it detects Arabic and other scripts that use these features.

Since you have invented your own "Script", it won't automatically work. You need to add custom OpenType layout features.

This forum topic is a good start:
How to make a contextual cursive font
Erwin Denissen
High-Logic
Proven Font Technology
Hastrica
Posts: 2
Joined: Tue Jul 02, 2019 7:02 pm

Re: Arabic-style script with initial, medial etc. forms

Post by Hastrica »

Thank you, that does already help somewhat.

Looking at the code, I think I get the basic workflow... it's basically like:
  1. Add all my glyphs to the font (via "Insert glyph"?) and name them in accordance with their position
  2. Put them into classes in the script
  3. Activate the feature "ContextualAlternates"
  4. Define lookups inside the feature
  5. Define substitutions inside the lookups.
Anything I missed?

I'll try this out as soon as I have the chance. It's almost guaranteed that I'll be back :)
honest.bern
Posts: 42
Joined: Mon May 05, 2008 8:28 am
Location: England
Contact:

Re: Arabic-style script with initial, medial etc. forms

Post by honest.bern »

What is pausal? Is it "before punctuation that indicates a pause" such as comma, stop etc?
Ahzoh
Posts: 16
Joined: Wed Apr 05, 2017 1:19 pm

Re: Arabic-style script with initial, medial etc. forms

Post by Ahzoh »

honest.bern wrote: Wed Jul 03, 2019 7:43 pm What is pausal? Is it "before punctuation that indicates a pause" such as comma, stop etc?
https://en.wikipedia.org/wiki/Pausa
Basically, it's the form of the letter used at the end of a sentence, rather than just at the end of a word.
Post Reply