mirror of
https://github.com/lovell/sharp.git
synced 2025-07-09 18:40:16 +02:00
74 lines
2.3 KiB
JavaScript
Executable File
74 lines
2.3 KiB
JavaScript
Executable File
var sharp = require("../index");
|
|
var path = require("path");
|
|
var imagemagick = require("imagemagick");
|
|
var assert = require("assert");
|
|
var async = require("async");
|
|
|
|
var fixturesPath = path.join(__dirname, "fixtures");
|
|
|
|
var inputJpg = path.join(fixturesPath, "2569067123_aca715a2ee_o.jpg"); // http://www.flickr.com/photos/grizdave/2569067123/
|
|
var outputJpg = path.join(fixturesPath, "output.jpg");
|
|
|
|
async.series([
|
|
// Resize with exact crop
|
|
function(done) {
|
|
sharp(inputJpg).resize(320, 240).write(outputJpg, function(err) {
|
|
if (err) throw err;
|
|
imagemagick.identify(outputJpg, function(err, features) {
|
|
if (err) throw err;
|
|
assert.strictEqual(320, features.width);
|
|
assert.strictEqual(240, features.height);
|
|
done();
|
|
});
|
|
});
|
|
},
|
|
// Resize to fixed width
|
|
function(done) {
|
|
sharp(inputJpg).resize(320).write(outputJpg, function(err) {
|
|
if (err) throw err;
|
|
imagemagick.identify(outputJpg, function(err, features) {
|
|
if (err) throw err;
|
|
assert.strictEqual(320, features.width);
|
|
assert.strictEqual(261, features.height);
|
|
done();
|
|
});
|
|
});
|
|
},
|
|
// Resize to fixed height
|
|
function(done) {
|
|
sharp(inputJpg).resize(null, 320).write(outputJpg, function(err) {
|
|
if (err) throw err;
|
|
imagemagick.identify(outputJpg, function(err, features) {
|
|
if (err) throw err;
|
|
assert.strictEqual(391, features.width);
|
|
assert.strictEqual(320, features.height);
|
|
done();
|
|
});
|
|
});
|
|
},
|
|
// Identity transform
|
|
function(done) {
|
|
sharp(inputJpg).write(outputJpg, function(err) {
|
|
if (err) throw err;
|
|
imagemagick.identify(outputJpg, function(err, features) {
|
|
if (err) throw err;
|
|
assert.strictEqual(2725, features.width);
|
|
assert.strictEqual(2225, features.height);
|
|
done();
|
|
});
|
|
});
|
|
},
|
|
// Upscale
|
|
function(done) {
|
|
sharp(inputJpg).resize(3000).write(outputJpg, function(err) {
|
|
if (err) throw err;
|
|
imagemagick.identify(outputJpg, function(err, features) {
|
|
if (err) throw err;
|
|
assert.strictEqual(3000, features.width);
|
|
assert.strictEqual(2449, features.height);
|
|
done();
|
|
});
|
|
});
|
|
}
|
|
]);
|