I've just discovered the brilliant Class Manager and Pair Adjustment (in FC11.5 Pro), so I added some classes and pairs to a nearly finished font, that already contained relatively big kerning table (see attachd image).
The problem is, when I export the font to TTF:
• with the "Legacy 'kern' Table" set to Yes, the pair adjustments seem to be invisible (I was trying to move the Pairs up over the Table - no difference),
• with the "Legacy 'kern' Table" set to No, Photoshop can't open my images ("Could not complete your request because of a program error").
Is it possible to use both kerning table and pair adjustment in one font? Is there a recommended way of exporting fonts with mixed pair/table kerning?
Pair adjustment ignored or generating error
Pair adjustment ignored or generating error
- Attachments
-
- FC_PA+KT.png (6.98 KiB) Viewed 6070 times
-
- Moderator
- Posts: 11158
- Joined: Fri Oct 04, 2002 12:41 am
- Location: Bilthoven, The Netherlands
- Contact:
Re: Pair adjustment ignored or generating error
Maybe Photoshop fails to process a feature with more than one pair adjustment lookup.
FontCreator will use a single one for both export options, so remove one of the lookups and try if that works.
FontCreator will use a single one for both export options, so remove one of the lookups and try if that works.
Re: Pair adjustment ignored or generating error
So generally both options should work fine... And is there no option for binding both kerning tables together (i guess after breaking classes)?
-
- Top Typographer
- Posts: 9878
- Joined: Tue Oct 29, 2002 5:28 am
- Location: Seven Kings, London UK
- Contact:
Re: Pair adjustment ignored or generating error
I maintain a lookup table just for testing purposes.
I run the Autokern on the small list of pairs, then copy and paste the results to the main lookup table that is actually used.
The lookup table can contain any combination of kerning pairs using classes and/or glyphs. However, I nearly always use classes (manually created classes).
Copy kerning pairs generated by Autokern
Paste into font's pair adjustment table
Click OK to automatically remove the duplicates.
I run the Autokern on the small list of pairs, then copy and paste the results to the main lookup table that is actually used.
The lookup table can contain any combination of kerning pairs using classes and/or glyphs. However, I nearly always use classes (manually created classes).
Copy kerning pairs generated by Autokern
Paste into font's pair adjustment table
Click OK to automatically remove the duplicates.
Re: Pair adjustment ignored or generating error
I have to admit, that I'm new to Open Type Designer and the idea of having the same items (PairAdjustment and KerningFromKernTable) in three places ("Scripts", "Features" and "Lookups") is still obsure for me. Do you mean I could keep the kerning and get rid of the lookups? I tried to do so, but deleting my items in Lookups automatically erases it form the Scripts and Features. I'm very confused, as I guess I simply can't find a good insight into OpenType Designer... Maybe you could recommend some tutorial, so I could stop tormenting you with lame (I guess) questions ?Bhikkhu Pesala wrote: ↑Thu Jul 19, 2018 11:34 amI maintain a lookup table just for testing purposes.
A actually noticed, that in Photoshop CS5 (~2010), when i export the font with the "Legacy 'kern' Table" set to Yes, the duplicated kerning pairs from the table and the pair adjustments from the new classes add up (ie. XAdvance from the table -50 and another -50 from the class kerning effectively generates XAdvance -100). It seem to be contrary to them online manual, which states:
Or maybe my @2010 PS is too old?) The order in which lookups are defined is also the order in which they are processed by host applications. This button allows you to move a lookup down so they are processed earlier or later. As soon as the host application has found a match in one of the lookups it will stop processing that specific loookup. This can be useful to create an "override" for kerning pairs for example. Consider a large kern lookup which contains several class-based pairs. If one or two pairs need extra modification, you can add another lookup to the feature and add the "exceptions" before the actual kern table. This way the host application will find the "exception" first and will skip the "wrong" value from the large lookup.
-
- Moderator
- Posts: 11158
- Joined: Fri Oct 04, 2002 12:41 am
- Location: Bilthoven, The Netherlands
- Contact:
Re: Pair adjustment ignored or generating error
The wording is partly incorrect and is confusing as well. It should refer to a single lookup with multiple sub tables, while you have two separate lookups.
Re: Pair adjustment ignored or generating error
Now i understand. And is there a possibility to have one lookup with two subtables (one with classic kern table, second with classes and pairs)?Erwin Denissen wrote: ↑Thu Jul 19, 2018 4:57 pm (...) It should refer to a single lookup with multiple sub tables, while you have two separate lookups.
So far I managed to broke classes and copy-paste all generated kerning pairs to the first lookup, but no mater if I keep everything in one subtable or paste to a secod subtable, Photoshop keeps erroring me.
Re: Pair adjustment ignored or generating error
Finally, I tamed the beast (at least in terms of my humble needs - currently for the price of breaking the classes). Erwin and Bhikkhu, thank you very much for all your replies!
Anyway, I think there's some space for the software improvements here - like some kind of "smart" pair kerning, that allow keeping pairs, with flexible posibility of putting them as virtual subtables in another lookup... Or a tool for finding overlapping kerning pairs in different lookups, with manual and automated purging options - that would be great!
Anyway, I think there's some space for the software improvements here - like some kind of "smart" pair kerning, that allow keeping pairs, with flexible posibility of putting them as virtual subtables in another lookup... Or a tool for finding overlapping kerning pairs in different lookups, with manual and automated purging options - that would be great!
Mixing Classes-based and Glyph-based kerning in one subtable
Are there any limitations of using Classes-based and Glyph-based kerning pairs in one Subtable?
I mean, in the "New Pair Adjustment" window I can choose the "Kind" [ Classes and Glyphs - Classes - Glyphs ]. Is this option available only to help to keep the interface tidy and easier to navigate, or is there any reason to avoid using both classes- and glyph-based kerning pairs in one subtable (i.e. the font is less compatible etc.)?
I mean, in the "New Pair Adjustment" window I can choose the "Kind" [ Classes and Glyphs - Classes - Glyphs ]. Is this option available only to help to keep the interface tidy and easier to navigate, or is there any reason to avoid using both classes- and glyph-based kerning pairs in one subtable (i.e. the font is less compatible etc.)?
- Attachments
-
- New Pair Adjustment - Kind.png (16.07 KiB) Viewed 5504 times
-
- Moderator
- Posts: 11158
- Joined: Fri Oct 04, 2002 12:41 am
- Location: Bilthoven, The Netherlands
- Contact:
Re: Pair adjustment ignored or generating error
You can mix them (FontCreator will then treat a glyph as a glyph class with a single glyph) but be aware a class-based kern subtable can only hold classes that don't overlap. If they overlap, FontCreator will export the subtable as flattened kern pairs.
To check whether subtables contain overlapping classes, open the table in the OpenType Layout Feature Code Editor and compile the code.
To check whether subtables contain overlapping classes, open the table in the OpenType Layout Feature Code Editor and compile the code.