imagemin ![Build Status](https://travis-ci.org/kevva/imagemin.svg?branch=master)
Minify images seamlessly with Node.js
Install
$ npm install --save imagemin
Usage
var Imagemin = require('imagemin');
var imagemin = new Imagemin()
.src('foo.jpg')
.dest('foo-optimized.jpg')
.use(Imagemin.jpegtran({ progressive: true }));
imagemin.optimize(function (err, file) {
console.log(file);
});
API
new Imagemin()
Creates a new Imagemin
instance.
.use(plugin)
Add a plugin
to the middleware stack.
.src(file)
Set the file to be optimized. Can be a Buffer
or the path to a file.
.dest(file)
Set the destination to where your file will be written. If you don't set any destination
the file won't be written.
.optimize(cb)
Optimize your file with the given settings.
.run(file, cb)
Run all middleware plugins on your file.
Plugins
The following plugins are bundled with imagemin:
- gifsicle — Compress GIF images.
- jpegtran — Compress JPG images.
- optipng — Lossless compression of PNG images.
- pngquant — Lossy compression of PNG images.
- svgo — Compress SVG images.
.gifsicle()
Compress GIF images.
var Imagemin = require('imagemin');
var imagemin = new Imagemin()
.use(Imagemin.gifsicle({ interlaced: true }));
.jpegtran()
Compress JPG images.
var Imagemin = require('imagemin');
var imagemin = new Imagemin()
.use(Imagemin.jpegtran({ progressive: true }));
.optipng()
Lossless compression of PNG images.
var Imagemin = require('imagemin');
var imagemin = new Imagemin()
.use(Imagemin.optipng({ optimizationLevel: 3 }));
.pngquant()
Lossy compression of PNG images.
var Imagemin = require('imagemin');
var imagemin = new Imagemin()
.use(Imagemin.pngquant());
.svgo()
Lossy compression of SVG images.
var Imagemin = require('imagemin');
var imagemin = new Imagemin()
.use(Imagemin.svgo());
CLI
$ npm install --global imagemin
$ imagemin --help
Usage
$ imagemin <file>
$ cat <file> | imagemin
Example
$ imagemin foo.png > foo-optimized.png
$ cat foo.png | imagemin > foo-optimized.png
Options
-i, --interlaced Extract archive files on download
-o, --optimizationLevel <number> Path to download or extract the files to
-p, --progressive Strip path segments from root when extracting
License
MIT © Kevin Mårtensson