node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



Build Status NPM version

Converts SVG fonts to TTF format. It was initially written for Fontello, but you can find it useful for your projects.

For developpers:

Internal API is similar to FontForge's one. Since primary goal is generating iconic fonts, sources can lack some specific TTF/OTF features, like kerning and so on. Anyway, current code is a good base for development, because it will save you tons of hours to implement correct writing & optimizing TTF tables.

Using from CLI


npm install -g svg2ttf

Usage example:

svg2ttf fontello.svg fontello.ttf


svg2ttf(svgFontString, options) -> buf

  • svgFontString - SVG font content
  • options
    • copyright - copyright string (optional)
    • ts - Unix timestamp (in seconds) to override creation time (optional)
    • version - font version string, can be Version x.y or x.y.
  • buf - internal byte buffer object, similar to DataView. It's buffer property is Uin8Array or Array with ttf content.


var fs = require('fs');
var svg2ttf = require('svg2ttf');
var ttf = svg2ttf(fs.readFileSync('myfont.svg', 'utf8'), {});
fs.writeFileSync('myfont.ttf', new Buffer(ttf.buffer));