Is zero-width enough to specify a diacritic?

Get help with FontCreator here. Please do not post feature requests or bug reports here.
Post Reply
Posts: 4
Joined: Sun Jun 06, 2004 2:34 am

Is zero-width enough to specify a diacritic?

Post by Mottel » Mon Jun 14, 2004 5:59 am

I have a Hebrew font that I want to modify with FCP to make it usable in (non-internationalized) Word. (Still can't use FCP on my Windows 98SE PII machine, but I'm using it at a friend's place). Hebrew has many diacritics, which Word won't display properly when I use that font. (It doesn't place the diacrit under/over the adjacent letter, it types the diacrit separately in its own character space. I thought the solution would be to make them all zero-width characters (or, as FCP calls it, zero 'advance-width'). But that hasn't had the desired effect. Is there something else I need to do? It's not practical to create composite characters for them all because there are too many possible combinations of letters and diacrits (almost any letter can go with any diacritic). I thought that if the advance width for a character was specified as zero, Word, etc should not advance the cursor when typing them, but put it in the same character space as the previous character.

Bhikkhu Pesala
Top Typographer
Top Typographer
Posts: 8476
Joined: Tue Oct 29, 2002 5:28 am
Location: Seven Kings, London UK

Post by Bhikkhu Pesala » Mon Jun 14, 2004 6:50 pm

If the diacritic is just zero width, Word should put it in the same position as the next character. To overlay the previous character you also need a negative left side-bearing.

The advantage of creating composites is that you can define the precise position of the diacritic. Sometimes one may find problems with diacritics that need to combine with characters of different widths.

ṃ and ḷ

These two letters need the diacritic in very different positions

Vertical position is even more awkward;

n̆ and N̆
My FontsReviews: MainTypeFont CreatorHelpFC12 Pro + MT9.0 @ Win10 1909 build 18363.657

Posts: 4
Joined: Sun Jun 06, 2004 2:34 am

Post by Mottel » Mon Jun 14, 2004 11:19 pm

Thanks Bhikkhu. I should have been clearer: Hebrew is written RTL, so for Hebrew text pasted into Word in a way that looks visually correct, the character that appears to be the previous letter to the human Hebrew-reader is actually the next character for Word (which knows nothing of Hebrew), since the text actually flows from LTR as far as Word is concerned. (I am using standard USA English Windows and non-internationalized Word97.) So, if zero advance-width should put the diacrit under the NEXT character, that is exactly what I want. Trouble is, it is not putting it under EITHER adjacent character, but it its own character space, so it appears to be taking no notice of zero-width. Another reader here suggested to make the width a miniscule value, like 1, because some software chokes on zero-width characters. I will give it a go and see if that helps.

If I DO want to overlay the previous character by making LSB negative as you suggest, should I just use the existing LSB value, only negative, or do I have to increase the (absolute) value (i.e. push it further back to the left)to CENTER it under the previous character?

Posts: 331
Joined: Tue Oct 15, 2002 11:05 am
Location: York, UK

Post by Jowaco » Tue Jun 15, 2004 3:31 pm

Be aware that, when using the newer versions of FCP, on Saving the modified font, as you wish to have it, i.e. with negative left-side-bearings, the left-side-bearing-margin-lines for all glyphs will be moved to x=0. Since you can only install a font if it has been previously Saved, it is to no avail to test the installed font in, say, MS Word, because the font will not be as you wished to have it. A way around this, as reported by Erwin Denissen, some time ago, is to use Font/Test from FCP, which installs the font, temporarily. 0pen MS Word, and the font will appear as High Logic + a number, in the drop-down list of Font choices, as long as the Test Window is open, and test your changes.

This leaves the problem:
Where do you go from there if you accomplish what you want? Your font with its unusual bearings can not be installed in the resident Windows Fonts folder!

I am not sure about the wisdom of returning all left-side-bearing-margin-lines to x=0 on Saving a font. After all, this can be achieved with the new Glyph transformer under the Tools menu.

Sorry to be so negative. I wish I had better, but I have been trying to do a similar thing for a couple of years and have posted in the Forum on this subject.


Posts: 7
Joined: Thu Jun 24, 2004 9:39 pm

Post by Steelangel » Thu Jun 24, 2004 10:13 pm

One technique that works with diacritics is to make 2 or three versions of them, one for wide characters, one for thin characters, and one for those inbetween. Dan Smith's Tengwar fonts use up to 8 different diacritical placements, for example.

But if you want the diacritic over the previous letter, it's all about negative bearing.

Post Reply