Exports the kerning of an OpenType font (ttf, otf and woff)
https://vicocotea.github.io/export-kerning-app/
Upload a font file and export its kerning pairs directly in your browser.
npm installnpm install export-kerning opentype.jsimport opentype from "opentype.js";
import { exportKerning } from "export-kerning";
const font = await opentype.load("path/to/font.ttf");
// Export all kerning pairs
const result = exportKerning(font);
// With options
const result = exportKerning(font, {
ranges: "U+0020-007E", // Unicode ranges (optional)
text: "Sample text", // Generate subset (optional)
});You can also use the tool from command line:
npx export-kerning <font-file> [options]node index.js <font-file> [options]-o, --output <file>- Output file path (default: "kerning.json")-t, --text <text>- Text to analyze for kerning pairs-r, --ranges <ranges>- Unicode ranges to analyze-h, --help- Display help information
Export kerning to JSON:
npx export-kerning LibreBaskerville.ttfOptimized export with ranges :
npx export-kerning LibreBaskerville.ttf -r U+0020-007EOptimized export with text :
npx export-kerning LibreBaskerville.ttf -t "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."{
"unitsPerEm": 1000,
"kerningPairs": [
{ "left": ["f"], "right": ["í", "ı"], "value": 1 },
{ "left": ["ď", "ĩ", "ľ", "ť"], "right": ["ß"], "value": 1 },
{ "left": ["ff"], "right": ["í", "ı", "ȷ"], "value": 1 },
{ "left": ["ĩ"], "right": ["]"], "value": 4 },
{ "left": ["("], "right": ["W", "Ŵ", "Ẁ", "Ẃ", "Ẅ"], "value": 5 },
{
"left": ["U", "Ù", "Ú", "Û", "Ü", "Ũ", "Ū", "Ŭ", "Ů", "Ű", "Ų", "Ụ"],
"right": ["b", "þ"],
"value": 5
}
]
}
ISC