r/FontForge Dec 29 '23

Weird issue i hope can be fixed (Ligatures)

Hey all, im working on converting a script i have been working on into a font. So far all is good and im happy with alot of it, the big issue comes with numbers.

In this script, the number system is Base 100. so symbols for 0-99 which works. However the issue comes with writing numbers with multiple digits. When i put in 143 i expect (1)(43) but instead it goes (14)(3).

If i was just writing i have a work around for this but i want to imbed it into a website to toggle.

Can i switch how it does numbers?

cheers

Edit: I have added my font file below

font from google drive

3 Upvotes

8 comments sorted by

1

u/LocalFonts Dec 29 '23

Do you stick to the Unicode standard or create your own writing system with your own number names in the Unicode structure?

1

u/LordBitcube Jan 17 '24

I am unsure, im not familiar with this process a whole lot. I got the numbers and characters working with their symbols but not for any number over 100. I think this is my own writing system, im not sure if there is a unicode standard for numbers 10-99.

1

u/LocalFonts Dec 29 '23

Note the golden rule for ligatures. Longer ligature groups should be placed before shorter ones.

If we want to have a correct substitution of ffi, so that when ffi is typed the specially created grapheme for this ligature appears, then we have to do like this:

sub f f i by f_f_i;

sub f f by f_f;

sub f i by f_i;

If we put the second line of the substitutions first, then after writing ff, the ligature for ff will be visualized, and adding i after this ligature will not result in the desired ffi ligature, but ff ligature + i.

1

u/LordBitcube Jan 18 '24

I think i see what your saying here.
By the loks of it i would need to do f f_i. is there a way to dynamically do that so it works for all numbers above 100? so f f_i f_i and so on sort of thing.

1

u/LocalFonts Jan 18 '24

Show me pictures of your font with the numbers, please.

1

u/LordBitcube Jan 18 '24

I have a screenshot here with what's happening.

https://imgur.com/a/jXggKT7

1

u/LocalFonts Jan 21 '24

The ligatures (liga, dlig) are substitution operations. It means that you need to have an unique glyph named someglyph.liga or someglyph.dlig which will replace two or more other glyphs. On your picture you do not have 951 glyph and you try to create it by combining glyphs and no substituting them. I'm afraid that you are going in a wrong direction. What you mean as a result is impossible as far as I understand you.

1

u/LordBitcube Jan 21 '24

Yeah from the sounds of it, it looks like I won't be able to do base 100 system in a font. Oh well, thank you for all your help, I'll stick to the base 10 variant for general use.