Update tests and comments after 7faacd9 (#3080)

This commit is contained in:
Kleis Auke Wolthuizen 2022-02-08 22:12:38 +01:00 committed by GitHub
parent 5a9f89fe06
commit 7eb5efa3a3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 17 additions and 24 deletions

View File

@ -184,7 +184,7 @@ class PipelineWorker : public Napi::AsyncWorker {
if (inputImageType == sharp::ImageType::JPEG) {
// Leave at least a factor of two for the final resize step, when fastShrinkOnLoad: false
// for more consistent results and avoid occasional small image shifting
// for more consistent results and to avoid extra sharpness to the image
int factor = baton->fastShrinkOnLoad ? 1 : 2;
if (shrink >= 8 * factor) {
jpegShrinkOnLoad = 8;
@ -193,7 +193,7 @@ class PipelineWorker : public Napi::AsyncWorker {
} else if (shrink >= 2 * factor) {
jpegShrinkOnLoad = 2;
}
// Skip shrink-on-load for known libjpeg rounding errors
// Lower shrink-on-load for known libjpeg rounding errors
if (jpegShrinkOnLoad > 1 && static_cast<int>(shrink) == jpegShrinkOnLoad) {
jpegShrinkOnLoad /= 2;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 B

View File

Before

Width:  |  Height:  |  Size: 277 B

After

Width:  |  Height:  |  Size: 277 B

View File

@ -637,28 +637,21 @@ describe('Resize dimensions', function () {
});
});
it('fastShrinkOnLoad: false ensures image is not shifted', function (done) {
return sharp(fixtures.inputJpgCenteredImage)
.resize(9, 8, { fastShrinkOnLoad: false })
[
true,
false
].forEach(function (value) {
it(`fastShrinkOnLoad: ${value} does not causes image shifts`, function (done) {
sharp(fixtures.inputJpgCenteredImage)
.resize(9, 8, { fastShrinkOnLoad: value })
.png()
.toBuffer(function (err, data, info) {
if (err) throw err;
assert.strictEqual(9, info.width);
assert.strictEqual(8, info.height);
fixtures.assertSimilar(fixtures.expected('fast-shrink-on-load-false.png'), data, done);
fixtures.assertSimilar(fixtures.expected('fast-shrink-on-load.png'), data, done);
});
});
it('fastShrinkOnLoad: true (default) might result in shifted image', function (done) {
return sharp(fixtures.inputJpgCenteredImage)
.resize(9, 8)
.png()
.toBuffer(function (err, data, info) {
if (err) throw err;
assert.strictEqual(9, info.width);
assert.strictEqual(8, info.height);
fixtures.assertSimilar(fixtures.expected('fast-shrink-on-load-true.png'), data, done);
});
});
[