Arno Pro Regular + Kerning

david h's picture

The font is without kerning — why?

paul d hunt's picture

i doubt it. what application are you testing it in?

david h's picture

InDesign, AI, PS — CS2, FL (we needed the font, so just bought it. I see the kern feature, but no kerning)

Miguel Sousa's picture

> The font is without kerning — why?
> InDesign, AI, PS — CS2, FL (we needed the font, so just bought it. I see the kern feature, but no kerning)

David, I don't see what you describe. Are we both using the same things?

twardoch's picture

The kerning lookup(s) in Arno Pro are so complex that the decompiler in FontLab Studio fails to interpret the code for it. But of course kerning is in there.

FontLab Studio can decompile some binary OpenType Layout tables into the source Adobe FDK for OpenType notation, but this is by no means obvious and does not work for all kinds of lookup types and feature configurations.

Once Adobe releases FDK for OpenType version 3 (or 2.5, or whatever they choose to call it) that supports all lookup types, we will rewrite the FontLab Studio part so that it is able to "dump" the binary OTL code into the AFDKO notation more fully.

Adam Twardoch
Fontlab Ltd.

hrant's picture

> The kerning lookup(s) in Arno Pro are so complex that ...

I wonder if this is a protection mechanism...


paul d hunt's picture

I wonder if this is a protection mechanism…

i would guess that effectively, yes, it is for now due to the limitations of FontLab, however i don't think that the features were intentionally designed for this reason. if i'm not mistaken, the most current build of AFDKO supports more complex GPOS lookup types (things like being able to kern triplets) and the current build of FLab has not been updated to handle these types of things since the new AFDKO came out. (somebody please correct me if this information is incorrect)

Miguel Sousa's picture

> I wonder if this is a protection mechanism...

Protection against what? Are you trying to start some sort of conspiracy theory?

There's nothing mysterious, custom or secret about Arno Pro's 'kern' feature other than its complexity is proportional to the size of the font's glyph set. FWIW, the AFDKO version we used for building the fonts is the exact same one that is made publicly available, and AFAIK all the fonts that come out of MakeOTF follow the OpenType specification closely.

If there's anything extraordinary to say about Arno Pro's 'kern' feature is that it's big — read huge —, and uses a GPOS Extension lookup type.

But that's not the point. David started this thread saying that he bought Arno Pro Regular, and the font has no kerning when using it with CS2 apps (InDesign, Illustrator, Photoshop). Needless to say I'm still waiting to see some evidence of that.

Miguel Sousa's picture

BTW, if anyone is interested to see the kerning data that went into each font, including kern classes, class kern pairs and subtable breaks, just dump the GPOS table with spot (tool included in the AFDKO). The output will show all the lookups in feature file syntax. The command to use is:

spot -t GPOS=7 ArnoPro-Regular.otf > gpos.txt

david h's picture

Thanks Miguel. Only today I was able to talk to my guy, and to see the 'problem'. So, to cut the 'conspiracy theory' — Arno is fine & great, no problem.

Miguel — I'll email you the whole 'problem'.

hrant's picture

> Are you trying to start some sort of conspiracy theory?

It would be nice. :-) Mostly it's just the way my brain works.

But you know of course that it's not just me. Some people think for example that the OT format was invented to un-democratize type design. Now, I'm all for demoting democracy, but most of all being a practical person I'm interested in the effects of OT on the ground - and I like it! Sometimes corporations get it right in spite of themselves. :-)

We might shed some light on this by doing things like comparing Arno's kerning to that of something like Garamond Premier Pro. Is the kerning better and/or are there more characters/glyphs to kern?


k.l.'s picture

I think it's only natural. Not conspiracy theory, I mean, but the circumstances that lead to it. If a format is new, there are only few tools available that allow creation and modification of such files. And it takes some time to learn how to make good use of the format.
So with AFDKO2, you can do things that are "secure" since they cannot be re-imported into current font editors. But this is temporary only.  :)

* Like features using contextual positioning or extension lookup types.

Do you mean comparing the quality of kerning, or just comparing sizes?

hrant's picture

Both. Although in this case the quantitative
aspect of quality - as in "more of a good thing".


Bendy's picture

Humm, this is worrying. I'm doing a little extension of Arno Pro, adding diacritics to some Latin letters. Since FontLab is unable to read the kerning from the fonts, what is the recommended way to preserve kerning (and inherit existing kerning onto the added characters)? Any help greatly appreciated :-)

EDIT: Glyphs doesn't do the job either. After compressing kerning and trying to export, I get a 'MakeOTF error' saying 'GPOS feature 'kern' causes overflow of offset to a subtable.'

Michel Boyer's picture

You could try FontForge. With the macports version of FontForge (fontforge 20120731 libfontforge 20120731-ML), I could open ArnoPro-Regular.otf, save, and then look at the kerning of the font that has been saved (the new version fontforge 04:17 EST 11-Apr-2014 libfontforge 20140411 crashes when I try to type the letter T for the first class)

(open image in new window to see actual size)

You can also select "Element > Font info > Lookups > GPOS" and then right click kern and select "save lookup"; you will get a Adobe feature file containing the kerning information.

Bendy's picture

Many thanks, Michel. Does FontForge also preserve all the other features and compile everything into .otf format? I need to ship 10 styles of Arno so this might be the best bet, otherwise it looks like I'll have to get my hands dirty with FDK.

Michel Boyer's picture

FontForge does not preserve the naming table. So you need at least to extract the naming table from the Adobe font and then merge it into the resulting file; I do that with TTX. Aside from that I think FontForge does not scrap Adobe fonts (I have bundled i.e. old version, either CS3 or Adobe Type Classics). Anyway, if FontForge has a problem with a table, it emits a warning message. I have always found a way out with TTX; I have never tried the FontForge feature "Fontfile > Preferences > Open Font > Preserve tables" that might also help for tables FontForge does not know. But, frankly, if I only modified the GPOS table, I take it from the resulting .otf font produced by FontForge and merge it into the original with TTX. That way, everything else is preserved.

hrant's picture

Funny, when I did the Sanskrit transliteration extension to Garamond Premier, I didn't attempt to add any kerning, but preserving the existing kerning was trivial.


Jens Kutilek's picture

I did a quick test and was able to extract a feature file from Arno Pro with DTL OTMaster, open the original font in FontLab, make an FDK build structure in a folder (I have a script that does this for the current font in FontLab), then try to build the font on the command line with makeotf.

On the first try it failed with the same message as Glyphs (GPOS feature 'kern' causes overflow of offset to a subtable), but after adding "UseExtension" to the kerning lookup in the feature file, the font can be built with makeotf. I haven't done any checks if the font is identical to the original, though.

BTW. In Glyphs, you can find a FDK build structure in your home folder in Library/Application Support/Glyphs/Temp/‹font name›. Perhaps you can add the "UseExtension" lookup flag in the 'features' file there and compile with makeotf from there.

Bendy's picture

Good advice, many thanks, Jens. I wasn't aware of that flag, and it sounds very promising. I don't have OTMaster, so will need to try other ways of extracting the features and kerning info.

Thomas Phinney's picture

Although it might need to be manually spliced into the kerning, I believe "UseExtension" works fine in FontLab Studio 5.1+.


Syndicate content Syndicate content