Uh uh... problem with generating font

nettoo's picture

Hi,

I recently wanted to generate one font into OTF I made, but some weird things happened.
While generating, at 93% of whole process, in Output panel, it shows me this warnings. After a couple of seconds, it complete whole 100% process of generating and I can see OTF file, but when I try to double-click on it, it shows an error (file is corrupted).

I see that there are a lot of "removing duplicate glyph" in Output panel, but I can't find the reason why that appears.

One more thing... I tried somehow to bypass this errors by generating font first into Win Type1 (PFB) and then from PFB > OTF. It works, I can install font and on double-click I can see "Quick brown fox...", but... it looks like some kerning pairs are missing or are incorrect (not like they are in original VFB file), meaning this is not the solution for this problem.

I need help :)

P.S. - Sorry for such a looooong post.


[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [z zacute zcaron zdotaccent] [i iacute icircumflex fi dotlessi igrave idieresis ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1897]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [z zacute zcaron zdotaccent] [i m n p r racute iacute icircumflex nacute ncaron rcaron dotlessi igrave idieresis ntilde ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1898]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1899]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1899]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1899]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [z zacute zcaron zdotaccent] [u uring uacute uhungarumlaut udieresis ugrave ucircumflex ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1899]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1900]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1900]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1900]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [z zacute zcaron zdotaccent] [q u uring uacute uhungarumlaut udieresis ugrave ucircumflex ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1900]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1901]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1901]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1901]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1901]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [z zacute zcaron zdotaccent] [v w y yacute ydieresis ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1901]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1903]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1903]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1903]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1903]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [z zacute zcaron zdotaccent] [b h k l lslash lcaron lacute ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1903]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [parenleft bracketleft braceleft] [j ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1904]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1905]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1905]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1905]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [parenleft bracketleft braceleft] [Y Yacute Ydieresis ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1906]
[NOTE] Removing duplicate pair positioning in 'kern' feature: [parenleft bracketleft braceleft] [j ]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1907]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [parenleft bracketleft braceleft] [T Tcaron Tcommaaccent ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1907]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1908]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [parenleft bracketleft braceleft] [C Cacute Ccedilla Ccaron ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1908]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1909]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1909]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1909]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1909]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1909]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1909]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [parenleft bracketleft braceleft] [E Eacute Eogonek Edieresis Ecaron AE OE Egrave Ecircumflex ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1909]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1910]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1910]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1910]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [parenleft bracketleft braceleft] [V W ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1910]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1911]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1911]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1911]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1911]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [parenleft bracketleft braceleft] [b h k l lslash lcaron lacute ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1911]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1912]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1912]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1912]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [A Aogonek Aacute Acircumflex Abreve Adieresis Agrave Atilde Aring ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1912]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1913]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1913]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1913]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [A Aogonek Aacute Acircumflex Abreve Adieresis AE Agrave Atilde Aring ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1913]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1914]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1914]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1914]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1914]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1914]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1914]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [E Eacute Eogonek Edieresis Ecaron AE OE Egrave Ecircumflex ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1914]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [P ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1915]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [R Racute Rcaron ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1916]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1917]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [c cacute ccedilla ccaron ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1917]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1918]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1918]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [d l lslash lcaron lacute dcaron dcroat fl ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1918]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1919]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1919]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1919]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [e eacute eogonek edieresis ecaron ae oe egrave ecircumflex ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1919]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1920]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1920]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1920]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [g ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1920]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [r racute rcaron ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1921]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1922]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [s sacute scaron scommaaccent ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1922]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1923]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quoteleft quotedblleft] [s sacute scaron scommaaccent germandbls ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1923]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1924]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quotesinglbase quotedblbase] [C Cacute Ccedilla Ccaron ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1924]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1925]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1925]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1925]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quotesinglbase quotedblbase] [G ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1925]
[NOTE] Removing duplicate glyph <> [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1926]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quotesinglbase quotedblbase] [L Lslash Lcaron Lacute ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1926]
[WARNING] Start of new pair positioning subtable; some pairs may never be accessed: [quotesinglbase quotedblbase] [t tcaron tcommaaccent ] [C:/Users/gore/Documents/FontLab/Studio5/fontlab.fea 1927]
[WARNING] The feature file OS/2 overrides TypoAscender and TypoDescender do not sum to the font bbox size!

nettoo's picture

OK, I think I missed the lesson from generating classes.
This definitely has something to do with it.

Mark Simonson's picture

A glyph may only be used in either

- a single kerning class that is used for both left and right sides of a kerning pair, or
- in two classes, one that is used for the left and one that is used for the right.

The errors you're getting indicate that you have the same glyphs in more than one class and that they conflict (that is, the classes are for the same side of a kerning pair).

It'd be nice if FontLab would warn you when add the glyphs to a kerning class rather than when you try to generate the font, but it doesn't, so you just have to be careful.

There is also a "Clean Up Classes" command in the Classes panel, which should help with your problem, but it can't read your mind and my not give the kerning classes you want.

nettoo's picture

That's definitely it.
Thanks!

What a mess is there now. Uh uh... The only normal & reasonable solution to be sure that everything would be done correctly is to remove all old "classes" and start from the beginning.

OK, no time for crying, back to work, that's the only thing left now to do :)
Thank you once again Mark!

nettoo's picture

Hm, one more thing I just noticed.

I opened this file which gives me classes errors and in "Classes" panel I clicked "Generate Classes..." (with selected Default options (selected "Generate metric classes", "Generate kerning classes", "Do not mix characters from different scripts in the class".. everything else I leaved unchecked).

This is what do I get in "Classes" panel:

After that, I just Generated file again and it made OTF without any problems?!

Now, I have doubts... was this what I did done on right/correct way?

Mark Simonson's picture

I never use the "Generate Classes" command (I prefer more control than that), but I assume it wouldn't generate classes containing errors. It's not right or wrong to do it one way or the other, it just depends on how much control you want.

Jens Kutilek's picture

When trying to find the problem, you can ignore the metrics classes. They aren't used when generating a font, they are just a FontLabStudio-internal thing to help with spacing.

To check for errors/overlaps in your kerning classes, you can use the Yin Yang button in the Kerning Assistance dialog (Tools - Kernin Assistance).

nettoo's picture

That's it baby :)

Damn... it took me half day to figure it out.
Problem was next:

- "Kerning Assistance" was activated! Actually, it included pairs from FontLab's sample that had all sorts of glyphs - Greek, Cyrillic... and this font I made have only basic glyphs, so that made problem during generating. I saw that some of the classes were empty, and not selected either left nor right side-bearings. So I just copy all glyphs into new font file from the old one and I exported metrics from old one and imported it into new one = and that's it!

Mark, thank you for your help, it was very stressful, but useful experience. And I learned something new today.

Ciao ;)

nettoo's picture

Thanks Jens. I'll check that too now.

Syndicate content Syndicate content