diff --git a/lib/output.js b/lib/output.js index 3b1f9664..eec9dd0a 100644 --- a/lib/output.js +++ b/lib/output.js @@ -274,6 +274,7 @@ function toFormat (format, options) { if (is.object(format) && is.string(format.id)) { format = format.id; } + if (format === 'jpg') format = 'jpeg'; if (!is.inArray(format, ['jpeg', 'png', 'webp', 'tiff', 'raw'])) { throw new Error('Unsupported output format ' + format); } diff --git a/test/unit/io.js b/test/unit/io.js index 07889a2b..64a1054f 100644 --- a/test/unit/io.js +++ b/test/unit/io.js @@ -253,6 +253,21 @@ describe('Input/output', function () { }); }); + it('Support output to jpg format', function (done) { + sharp(fixtures.inputPng) + .resize(320, 240) + .toFormat('jpg') + .toBuffer(function (err, data, info) { + if (err) throw err; + assert.strictEqual(true, data.length > 0); + assert.strictEqual(data.length, info.size); + assert.strictEqual('jpeg', info.format); + assert.strictEqual(320, info.width); + assert.strictEqual(240, info.height); + done(); + }); + }); + it('Fail when output File is input File', function (done) { sharp(fixtures.inputJpg).toFile(fixtures.inputJpg, function (err) { assert(!!err);