Pair adjustment ignored or generating error

Get help with FontCreator here. Please do not post feature requests or bug reports here.
Post Reply
stormag
Posts: 30
Joined: Thu Feb 05, 2009 6:20 pm

Pair adjustment ignored or generating error

Post by stormag » Wed Jul 18, 2018 8:53 pm

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?
Attachments
FC_PA+KT.png
FC_PA+KT.png (6.98 KiB) Viewed 483 times

Erwin Denissen
Moderator
Moderator
Posts: 7350
Joined: Fri Oct 04, 2002 12:41 am
Location: De Bilt, The Netherlands
Contact:

Re: Pair adjustment ignored or generating error

Post by Erwin Denissen » Wed Jul 18, 2018 11:18 pm

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.
Erwin Denissen
High-Logic
Proven Font Technology

stormag
Posts: 30
Joined: Thu Feb 05, 2009 6:20 pm

Re: Pair adjustment ignored or generating error

Post by stormag » Thu Jul 19, 2018 10:55 am

So generally both options should work fine... And is there no option for binding both kerning tables together (i guess after breaking classes)?

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

Re: Pair adjustment ignored or generating error

Post by Bhikkhu Pesala » Thu Jul 19, 2018 11:34 am

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
Pair Adjustment Test.png
Pair Adjustment Test.png (40.19 KiB) Viewed 459 times
Paste into font's pair adjustment table
Pasted Lookups.png
Pasted Lookups.png (40.49 KiB) Viewed 454 times
Click OK to automatically remove the duplicates.
My FontsReviews: MainTypeFont CreatorHelpFC11.5 Pro + MT8.0 @ Win10 1803 build 17134.345

stormag
Posts: 30
Joined: Thu Feb 05, 2009 6:20 pm

Re: Pair adjustment ignored or generating error

Post by stormag » Thu Jul 19, 2018 4:20 pm

Bhikkhu Pesala wrote:
Thu Jul 19, 2018 11:34 am
I maintain a lookup table just for testing purposes.
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 :D ?

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:
) 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.
Or maybe my @2010 PS is too old?

Erwin Denissen
Moderator
Moderator
Posts: 7350
Joined: Fri Oct 04, 2002 12:41 am
Location: De Bilt, The Netherlands
Contact:

Re: Pair adjustment ignored or generating error

Post by Erwin Denissen » Thu Jul 19, 2018 4:57 pm

stormag wrote:
Thu Jul 19, 2018 4:20 pm
It seem to be contrary to them online manual, which states:
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.
Erwin Denissen
High-Logic
Proven Font Technology

stormag
Posts: 30
Joined: Thu Feb 05, 2009 6:20 pm

Re: Pair adjustment ignored or generating error

Post by stormag » Thu Jul 19, 2018 9:21 pm

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.
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)?

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.

stormag
Posts: 30
Joined: Thu Feb 05, 2009 6:20 pm

Re: Pair adjustment ignored or generating error

Post by stormag » Sat Jul 21, 2018 11:53 pm

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!

Post Reply