Auto-width and height calcs now round instead of floor

I think this will better match people's expectations
This commit is contained in:
Lovell Fuller 2015-07-03 15:21:28 +01:00
parent 321e0f2bfe
commit b8885c1faa
3 changed files with 5 additions and 5 deletions

View File

@ -317,7 +317,7 @@ class PipelineWorker : public NanAsyncWorker {
} else { } else {
// Auto height // Auto height
yfactor = xfactor; yfactor = xfactor;
baton->height = static_cast<int>(floor(static_cast<double>(inputHeight) / yfactor)); baton->height = static_cast<int>(round(static_cast<double>(inputHeight) / yfactor));
} }
} else if (baton->height > 0) { } else if (baton->height > 0) {
// Fixed height // Fixed height
@ -327,7 +327,7 @@ class PipelineWorker : public NanAsyncWorker {
} else { } else {
// Auto width // Auto width
xfactor = yfactor; xfactor = yfactor;
baton->width = static_cast<int>(floor(static_cast<double>(inputWidth) / xfactor)); baton->width = static_cast<int>(round(static_cast<double>(inputWidth) / xfactor));
} }
} else { } else {
// Identity transform // Identity transform

View File

@ -36,7 +36,7 @@ describe('Resize dimensions', function() {
if (err) throw err; if (err) throw err;
assert.strictEqual(true, data.length > 0); assert.strictEqual(true, data.length > 0);
assert.strictEqual('jpeg', info.format); assert.strictEqual('jpeg', info.format);
assert.strictEqual(391, info.width); assert.strictEqual(392, info.width);
assert.strictEqual(320, info.height); assert.strictEqual(320, info.height);
done(); done();
}); });
@ -59,7 +59,7 @@ describe('Resize dimensions', function() {
assert.strictEqual(true, data.length > 0); assert.strictEqual(true, data.length > 0);
assert.strictEqual('jpeg', info.format); assert.strictEqual('jpeg', info.format);
assert.strictEqual(3000, info.width); assert.strictEqual(3000, info.width);
assert.strictEqual(2449, info.height); assert.strictEqual(2450, info.height);
done(); done();
}); });
}); });

View File

@ -28,7 +28,7 @@ describe('Rotation', function() {
assert.strictEqual(true, data.length > 0); assert.strictEqual(true, data.length > 0);
assert.strictEqual('jpeg', info.format); assert.strictEqual('jpeg', info.format);
assert.strictEqual(320, info.width); assert.strictEqual(320, info.width);
assert.strictEqual(426, info.height); assert.strictEqual(427, info.height);
done(); done();
}); });
}); });