ValentinH / react-easy-crop

A React component to crop images/videos with easy interactions
https://valentinh.github.io/react-easy-crop/
MIT License
2.28k stars 166 forks source link

objectFit="cover" prevents to zoom out #566

Open mightym opened 2 days ago

mightym commented 2 days ago

Describe the bug When I use objectFit="cover" together with aspect={1} cropShape="round" I can't zoom the image to fit the crop area. The crop area is always smaller than the possible max crop area available:

In that screenshot my image is a square image. And you can see that there is still a lot of space left to zoom in. But you can't:

1

To Reproduce Steps to reproduce the behavior:

  1. Open the example below
  2. Upload a small square image

Expected behavior I expect to zoom in on the image so that it fully covers the crop area.

ValentinH commented 2 days ago

Do you expect to zoom in or out? The thing is that zooming out would lead to empty spaces at the top and bottom of the image..the library prevents that by default. However, you can set restrictPosition to false to disable this.

mightym commented 2 days ago

I leave you my sample image here. Also try to make your browser window smaller and larger. Both zoom direction have in the example screenshot above enough space.

10

Will try to prepare a screen capture video for you.

mightym commented 2 days ago

This is after I selected the image:

https://github.com/user-attachments/assets/be4c4aea-cdfd-4cbf-a765-93a2ff50c9af

ValentinH commented 19 hours ago

The thing is that zoom: 1 means that the image covers its container. If your cropped area is squared then it's better to have the container to be a square as well.

See this quick example: https://codesandbox.io/p/sandbox/react-easy-crop-custom-image-demo-forked-cghhr6

image