Get unlimited public & private packages + package-based permissions with npm Pro.Get started »

pngcrush

2.0.1 • Public • Published

node-pngcrush

NPM version Build Status Coverage Status Dependency Status

The pngcrush command line utility as a readable/writable stream. This is handy for situations where you don't want to worry about writing the input to disc and reading the output afterwards.

The constructor optionally takes an array of command line options for the pngcrush binary:

var PngCrush = require('pngcrush'),
    myCrusher = new PngCrush(['-res', 300, '-rle']);
 
sourceStream.pipe(myCrusher).pipe(destinationStream);

PngCrush as a web service (removes all ancillary chunks and does brute force compression):

var PngCrush = require('pngcrush'),
    http = require('http');
 
http.createServer(function (req, res) {
    if (req.headers['content-type'] === 'image/png') {
        res.writeHead(200, {'Content-Type': 'image/png'});
        req.pipe(new PngCrush(['-brute', '-rem', 'alla'])).pipe(res);
    } else {
        res.writeHead(400);
        res.end('Feed me a PNG!');
    }
}).listen(1337);

Installation

Make sure you have node.js and npm installed, and that the pngcrush binary is in your PATH, then run:

npm install pngcrush

License

3-clause BSD license -- see the LICENSE file for details.

Install

npm i pngcrush

DownloadsWeekly Downloads

1,960

Version

2.0.1

License

BSD-3-Clause

Unpacked Size

27.8 kB

Total Files

14

Last publish

Collaborators

  • avatar