loads a BMFont file in Node and the browser
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
fnt
lib
.gitignore
.npmignore
LICENSE.md
README.md
browser.js
index.js
json-spec.md
package.json
test.js

README.md

load-bmfont

stable

Loads an AngelCode BMFont file in browser (with XHR) and node (with fs and phin), returning a JSON representation.

var load = require('load-bmfont')

load('fonts/Arial-32.fnt', function(err, font) {
  if (err)
    throw err
  
  //The BMFont spec in JSON form
  console.log(font.common.lineHeight)
  console.log(font.info)
  console.log(font.chars)
  console.log(font.kernings)
})

Currently supported BMFont formats:

  • ASCII (text)
  • JSON
  • XML
  • binary

See Also

See text-modules for related modules.

Usage

NPM

load(opt, cb)

Loads a BMFont file with the opt settings and fires the callback with (err, font) params once finished. If opt is a string, it is used as the URI. Otherwise the options can be:

  • uri or url the path (in Node) or URI
  • binary boolean, whether the data should be read as binary, default false
  • (in node) options for fs.readFile or phin
  • (in browser) options for xhr

To support binary files in the browser and Node, you should use binary: true. Otherwise the XHR request might come in the form of a UTF8 string, which will not work with binary files. This also sets up the XHR object to override mime type in older browsers.

load({ 
  uri: 'fonts/Arial.bin', 
  binary: true
}, function(err, font) {
  console.log(font)
})

License

MIT, see LICENSE.md for details.