Преобразовать react-easy-crop Zoom/Params Params в правильное преобразование CSS: scale () translate () для динамическогCSS

Разбираемся в CSS
Ответить Пред. темаСлед. тема
Anonymous
 Преобразовать react-easy-crop Zoom/Params Params в правильное преобразование CSS: scale () translate () для динамическог

Сообщение Anonymous »

Я использую React-Easy-Crop в приложении Next.js/React, чтобы позволить пользователям обрезать изображения. Контейнер, удерживающий урожай, является динамическим - его ширина и высота могут измениться на основе макета.

Код: Выделить всё

 {
setPixelCrop(croppedAreaPixels);
}}
onMediaLoaded={mediaSize => {
setSize({ width: mediaSize.width, height: mediaSize.height });
}}
/>
in cangulatezoom () , я делаю:
const calculateZoom = () => {
return Math.max(
containerRef.current?.clientWidth / width || 1,
containerRef.current?.clientHeight / height || 1
);
};
< /code>
и представление Cropper на 100% правильное. Когда урожай завершен, я сохраняю: < /p>
onSave({
x: pixelCrop.x,
y: pixelCrop.y,
zoom: zoom
});
< /code>
Позже я хочу отображать изображение за пределами обрезки и визуально воспроизводить результат урожая, используя только преобразование CSS, например: < /p>

[img]{imageUrl}
transform: `translate(${-x}px, ${-y}px) scale(${zoom})`,
objectFit: 'cover',
}}
/>
< /code>
Но это не соответствует тому, что пользователи видели в Cropper. Особенно, когда контейнер изображения динамичен, а масштаб основан на minzoom = контейнер /размер изображения? < /P>
Я хочу, чтобы изображение выглядело точно так же, как и внутри. Идеально.
Заранее спасибо! Я также попробовал предложения по сгенерированию AI и самостоятельно создал несколько попыток формул, но я все еще не могу понять, как правильно преобразовать зум-масса в CSS Transform, который визуально соответствует обрезанному представлению.

Подробнее здесь: https://stackoverflow.com/questions/796 ... ale-transl
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • React Easy Crop ObjectFit Cover растягивает изображение, когда ширина изображения больше высоты
    Anonymous » » в форуме CSS
    0 Ответы
    33 Просмотры
    Последнее сообщение Anonymous
  • Обложка objectFit растягивает изображение, когда ширина изображения больше высоты в React easy Crop
    Anonymous » » в форуме CSS
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Обложка objectFit растягивает изображение, когда ширина изображения больше высоты в React easy Crop
    Anonymous » » в форуме CSS
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous
  • Анимация SVG Scale Scale медленная на iOS
    Anonymous » » в форуме CSS
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Bluetooth Scale Scale Проблема задержки чтения в Android
    Anonymous » » в форуме Android
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous

Вернуться в «CSS»