• calculating kerning pairs

    From Tavis Ormandy@taviso@gmail.com to comp.lang.postscript on Sat Aug 6 23:49:42 2022
    From Newsgroup: comp.lang.postscript

    Hello, I naively assumed that when I did setfont (foo) show that the
    kerning pairs in the font tables would influence spacing.

    I understand now that it does not. You're supposed to use kshow and
    apply the character spacing yourself.

    Fair enough, but then how do I get the "base" kerning for a character
    pair from within postscript, or do you have to parse the afm files
    manually?

    I understand that I can specify any kerning I want and that's a good
    thing, but wouldn't you usually want that to be a multiplier applied to
    the font's "base" kerning pairs?

    Tavis.
    --
    _o) $ lynx lock.cmpxchg8b.com
    /\\ _o) _o) $ finger taviso@sdf.org
    _\_V _( ) _( ) @taviso
    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From ken@ken@spamcop.net to comp.lang.postscript on Mon Aug 8 08:00:43 2022
    From Newsgroup: comp.lang.postscript

    In article <jl8d0lFdt3qU1@mid.individual.net>, taviso@gmail.com says...

    Hello, I naively assumed that when I did setfont (foo) show that the
    kerning pairs in the font tables would influence spacing.

    PostScript type 1 fonts don't have kerning information in the font.


    I understand now that it does not. You're supposed to use kshow and
    apply the character spacing yourself.

    Fair enough, but then how do I get the "base" kerning for a character
    pair from within postscript, or do you have to parse the afm files
    manually?

    You have to parse the AFM files (or kern tables in a TrueType font)
    manually.


    I understand that I can specify any kerning I want and that's a good
    thing, but wouldn't you usually want that to be a multiplier applied to
    the font's "base" kerning pairs?

    I can't pretend to know the reasoning behind the original design, but I
    would suggest that kerning is regarded as being like all other spacing
    control (widow/orphan/rivers etc) to be managed by the layout
    application.

    --- Synchronet 3.21d-Linux NewsLink 1.2