Home

Awesome

Coverage

kernDump

Various scripts for analyzing, reading and writing kerning information. These can be helpful for analyzing kerning (and the loss thereof) through various stages of font production. Some of these tools have been presented at ATypI Amsterdam 2013.


convertKernedOTFtoKernedUFO.py

Extracts kerning and groups from a compiled OTF and injects them into a new UFO file (which is created via tx).

Dependencies: getKerningPairsFromOTF.py (same repo), fontTools, tx (Part of the Adobe FDK)
Environment: command line

python3 convertKernedOTFtoKernedUFO.py font.otf

dumpkerning.py

Just van Rossum wrote this script. It imports all of the getKerningPairsFromXXX scripts (except VFB), and therefore can dump kerning from all kinds of formats (except VFB). Results in a .kerndump file at the location of the input file.

Dependencies: getKerningPairsFromFEA.py, getKerningPairsFromOTF.py, getKerningPairsFromUFO.py (same repo)
Environment: command line

python3 dumpkerning.py font.otf
python3 dumpkerning.py font.ufo
python3 dumpkerning.py kern.fea

getKerningPairsFromFEA.py

Extract a list of all kerning pairs that would be created from a feature file. Has the ability to use a GlyphOrderAndAliasDB file for translation of “friendly” glyph names to final glyph names (for comparison with the output of getKerningPairsFromOTF.py)

Dependencies: None
Environment: command line

python3 getKerningPairsFromFEA.py kern.fea
python3 getKerningPairsFromFEA.py -go <path to GlyphOrderAndAliasDB file> kern.fea


getKerningPairsFromOTF.py

Extract a list of all (flat) GPOS kerning pairs in a font, and report the absolute number of pairs.

Dependencies: fontTools
Environment: command line

python3 getKerningPairsFromOTF.py font.otf
python3 getKerningPairsFromOTF.py font.ttf

getKerningPairsFromUFO.py

Extract a list of all (flat) kerning pairs in a UFO file’s kern object, and report the absolute number of pairs.

Dependencies: defcon or Robofont
Environment: command line or Robofont

python3 getKerningPairsFromUFO.py font.ufo

getKerningPairsFromVFB.py

Extract a list of all (flat) kerning pairs from a VFB’s kern object, and report the absolute number of pairs. Run as a FontLab script. (not tested in several years)

Dependencies: FontLab 5
Environment: FontLab Studio 5


kernInfoWindow.py

(Silly) visualization of absolute kerning distance. Example of using the above getKerningPairsFromUFO.py from within Robofont.

Dependencies: getKerningPairsFromUFO.py (above)
Environment: Robofont

<img src="kernInfoWindow.png" width="412" height="384" alt="Kern Info Window" />

kernMap.py

Simple map to illustrate kerning topography.

By default, the output is an interactive html canvas, for exploration of the kerning map. Use pixel or svg formats to obtain a fingerprint of the kerning data.

An optional glyph list can be supplied (one glyph name per line), which will influence the size of the kerning map, and override the built-in glyph order.

Environment: command line

<img src="kernmap_canvas.png" alt="KernMap canvas" /> <img src="kernmap_pixel.png" alt="KernMap pixel" />