Minify font seamlessly
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
output
.editorconfig
.gitignore ignore output Apr 16, 2015
.travis.yml travis nodejs5 Apr 6, 2016
fixture.ttf
index.js
license first commit Mar 11, 2015
package.json update dependencies Apr 10, 2016
readme.md added quiet to readme Sep 10, 2015
test.js save tst time Apr 20, 2015

readme.md

gulp-fontmin

NPM version Build Status Downloads Dependencies Font support

Minify TTF font to SVG, EOT, WOFF with fontmin

Install

$ npm install --save-dev gulp-fontmin

Usage

var gulp = require('gulp');
var fontmin = require('gulp-fontmin');

gulp.task('default', function () {
    return gulp.src('src/fonts/*.ttf')
        .pipe(fontmin({
            text: '天地玄黄 宇宙洪荒',
        }))
        .pipe(gulp.dest('dist/fonts'));
});

API

fontmin(options)

Options:

  • text: A string corresponding glyphs of ttf
  • onlyChinese: {boolean} keep chinese only, exclude Latin, number and symbol. Default = false
  • fontPath: {string=} location of font file.
  • hinting: {boolean=} keep hint info, defaults true.
  • quiet: {boolean=} print how many fonts were effected, defaults false.

Practice

Get needed text from html

function minifyFont(text, cb) {
    gulp
        .src('src/font/*.ttf')
        .pipe(fontmin({
            text: text
        }))
        .pipe(gulp.dest('dest/font'))
        .on('end', cb);
}

gulp.task('fonts', function(cb) {

    var buffers = [];

    gulp
        .src('index.html')
        .on('data', function(file) {
            buffers.push(file.contents);
        })
        .on('end', function() {
            var text = Buffer.concat(buffers).toString('utf-8');
            minifyFont(text, cb);
        });

});

Related

License

MIT