Kerning Pairs List - Robofab

ReginaldV's picture

Hi all,

I want to get a list of the Kerning pairs for certain glyphs.

I using this code to get a list of the kerning pairs for 'A'


#
#GetPairs---------------
#
from robofab.world import CurrentFont
f = CurrentFont()
#
kerning = f.kerning
#
print kerning.getLeft('A')
print kerning.getRight('A')

This works fine, but the output window shows the results in a array format like :


[(('A', 'w'), -40), (('A', 'W'), -50), (('A', 'G'), -20), (('A', 'quoteright'), -20), (('A', 'Q'), -20), (('A', 'backslash'), -90), (('A', 'v'), -55), (('A', 'asciicircum'), -30), (('A', 'V'), -85), (('A', 'U'), -10), (('A', 'at'), -10), (('A', 'question'), -20), (('A', 'O'), -20), (('A', 'slash'), 20), (('A', 't'), -25), (('A', 'OE'), -20), (('A', 'T'), -65), (('A', 'Y'), -65), (('A', 'trademark'), -70), (('A', 'C'), -20)]
[(('quoteright', 'A'), -20), (('J', 'A'), -15), (('backslash', 'A'), 20), (('D', 'A'), -20), (('P', 'A'), -40), (('slash', 'A'), -90), (('U', 'A'), -10), (('Q', 'A'), -20), (('F', 'A'), -45), (('Y', 'A'), -65), (('O', 'A'), -20), (('B', 'A'), -5), (('T', 'A'), -65), (('W', 'A'), -50), (('V', 'A'), -85), (('at', 'A'), -10)]

Is it possible to the results in amore readable list format like :


('A', 'w'), -40)
(('A', 'W'), -50)
(('A', 'G'), -20)
(('A', 'quoteright'), -20)
(('A', 'Q'), -20)
(('A', 'backslash'), -90)
(('A', 'v'), -55)
(('A', 'asciicircum'), -30)
(('A', 'V'), -85)
(('A', 'U'), -10)

pvanderlaan's picture

Sure:

from robofab.world import CurrentFont

f = CurrentFont()
k = f.kerning

l = k.getLeft('A')
for ((c1, c2), x) in l:
-->print c1, c2, x

Replace '-->' by a tab. Hope this helps. :)

ReginaldV's picture

PvdL,

Thanks, thats a great help.

Syndicate content Syndicate content