var gm = require('gm') var Promise = require('bluebird') module.exports = function(stream, options) { return new Promise(function(resolve, reject) { var transform = gm(stream) if (options.gravity) { transform.gravity(options.gravity) } if (options.crop) { transform.geometry(options.crop.width, options.crop.height, '^') transform.crop(options.crop.width, options.crop.height, 0, 0) } transform.stream(function(err, stdout) { if (err) { reject(err) } else { resolve(stdout) } }) }) }