Floor media dimensions to prevent blurhash errors (#8157)
This commit is contained in:
parent
bc01efa124
commit
3160442b8b
2 changed files with 6 additions and 2 deletions
|
@ -52,9 +52,9 @@ export function suggestedSize(size: ImageSize, contentSize: Dimensions, maxHeigh
|
|||
|
||||
if (constrainedSize.h * aspectRatio < constrainedSize.w) {
|
||||
// Height dictates width
|
||||
return { w: constrainedSize.h * aspectRatio, h: constrainedSize.h };
|
||||
return { w: Math.floor(constrainedSize.h * aspectRatio), h: constrainedSize.h };
|
||||
} else {
|
||||
// Width dictates height
|
||||
return { w: constrainedSize.w, h: constrainedSize.w / aspectRatio };
|
||||
return { w: constrainedSize.w, h: Math.floor(constrainedSize.w / aspectRatio) };
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,5 +34,9 @@ describe("ImageSize", () => {
|
|||
const size = suggestedSize(ImageSize.Normal, { w: null, h: null });
|
||||
expect(size).toStrictEqual({ w: 324, h: 324 });
|
||||
});
|
||||
it("returns integer values", () => {
|
||||
const size = suggestedSize(ImageSize.Normal, { w: 642, h: 350 }); // does not divide evenly
|
||||
expect(size).toStrictEqual({ w: 324, h: 176 });
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue