ipx icon indicating copy to clipboard operation
ipx copied to clipboard

Incorrect resize result for an image

Open dmitriy-nz opened this issue 2 years ago • 1 comments

Environment

ipx - 2.0.2 nodejs - v18.16.1

Reproduction

Clone repo: https://github.com/dmitriy-nz/ipx-test Install deps Run npx ipx serve --dir ./imgs Open url: http://localhost:3000/s_200x200,fit_inside/test.jpg - Already at this step you will get an image with an incorrect size

On the native sharp everything works as expected with the same set of parameters Run node index.js for get the expected result via a native sharp Check output.jpg

Describe the bug

When I try to resize a "skinny" image I get the wrong result.

Original image (30x600): test

Call resize via ipx with parameters s_200x200,fit_inside and get wrong result (1x30): test

I ran the resize with the same parameters through native sharp and everything works as expected (10x200): output

Additional context

No response

Logs

No response

dmitriy-nz avatar Nov 28 '23 18:11 dmitriy-nz

Tracked the issue to this clampDimensionsPreservingAspectRatio fn call. Sharp seems to handle this correctly now, as works as expected when those lines are commented out. I'd question wether this manual patching still needed.

jameswragg avatar Dec 01 '23 14:12 jameswragg