imagemin
Minify images seamlessly
Install
$ npm install --save imagemin
Usage
var Imagemin = require('imagemin');
new Imagemin()
.src('images/*.{gif,jpg,png,svg}')
.dest('build/images')
.use(Imagemin.jpegtran({progressive: true}));
.run(function (err, files) {
console.log(files[0]);
});
You can use gulp-rename to rename your files:
var Imagemin = require('imagemin');
var rename = require('gulp-rename');
new Imagemin()
.src('images/foo.png')
.use(rename('bar.png'));
API
new Imagemin()
Creates a new Imagemin
instance.
.src(file)
Type: array
, buffer
or string
Set the files to be optimized. Takes a buffer, glob string or an array of glob strings
as argument.
.dest(folder)
Type: string
Set the destination folder to where your files will be written. If you don't set
any destination no files will be written.
.use(plugin)
Type: function
Add a plugin
to the middleware stack.
.run(callback)
Type: function
Optimize your files with the given settings.
callback(err, files)
The callback will return an array of vinyl files in files
.
Plugins
The following plugins are bundled with imagemin:
.gifsicle(options)
Compress GIF images.
var Imagemin = require('imagemin');
new Imagemin()
.use(Imagemin.gifsicle({interlaced: true}));
.jpegtran(options)
Compress JPG images.
var Imagemin = require('imagemin');
new Imagemin()
.use(Imagemin.jpegtran({progressive: true}));
.optipng(options)
Lossless compression of PNG images.
var Imagemin = require('imagemin');
new Imagemin()
.use(Imagemin.optipng({optimizationLevel: 3}));
.svgo(options)
Compress SVG images.
var Imagemin = require('imagemin');
new Imagemin()
.use(Imagemin.svgo());
CLI
$ npm install --global imagemin
$ imagemin --help
Usage
$ imagemin <file> <directory>
$ imagemin <directory> <output>
$ imagemin <file> > <output>
$ cat <file> | imagemin > <output>
Example
$ imagemin images/* build
$ imagemin images build
$ imagemin foo.png > foo-optimized.png
$ cat foo.png | imagemin > foo-optimized.png
Options
-i, --interlaced Interlace gif for progressive rendering
-o, --optimizationLevel <number> Optimization level between 0 and 7
-p, --progressive Lossless conversion to progressive
Related
License
MIT © imagemin