[javascript] Cropper.js의 마우스 드래그 이벤트 활용하기

Cropper.js는 이미지를 자르거나 크롭하는 작업을 쉽게 수행할 수 있는 JavaScript 라이브러리입니다. 이번 포스팅에서는 Cropper.js의 마우스 드래그 이벤트를 활용하여 이미지를 움직이는 기능을 구현하는 방법에 대해 알아보겠습니다.

Cropper.js 설치하기

Cropper.js를 사용하기 위해서는 먼저 해당 라이브러리를 다운로드하고 설치해야 합니다.

npm install cropperjs

이미지 엘리먼트와 Cropper.js 연결하기

이미지를 움직이는 기능을 구현하기 전에, Cropper.js와 이미지 엘리먼트를 연결해야 합니다. 예를 들어, 아래와 같은 HTML 코드가 있다고 가정해봅시다.

<div>
  <img id="image" src="path/to/image.jpg">
</div>

이 경우, Cropper.js와 이미지를 다음과 같이 연결할 수 있습니다.

import Cropper from 'cropperjs';

document.addEventListener('DOMContentLoaded', function() {
  const image = document.getElementById('image');
  const cropper = new Cropper(image);
});

위의 코드는 DOM이 로드되면 이미지 엘리먼트를 Cropper.js로 초기화하는 코드입니다.

마우스 드래그 이벤트로 이미지 움직이기

이제 마우스 드래그 이벤트를 활용하여 이미지를 움직이는 기능을 구현해보겠습니다. Cropper.js에서는 cropmove 이벤트를 사용하여 이미지의 위치를 변경할 수 있습니다.

import Cropper from 'cropperjs';

document.addEventListener('DOMContentLoaded', function() {
  const image = document.getElementById('image');
  const cropper = new Cropper(image);

  cropper.on('cropmove', function() {
    const imageData = cropper.getImageData();
    // 이미지의 새로운 위치에 대한 로직 작성
  });
});

위의 코드에서는 cropmove 이벤트를 사용하여 이미지의 새로운 위치에 대한 로직을 작성할 수 있습니다. 이벤트 핸들러 내에서는 cropper.getImageData() 함수를 사용하여 새로운 이미지 데이터를 가져올 수 있습니다. 이때, 새로운 이미지 위치에 대한 작업을 수행하면 됩니다.

마무리

이렇게 Cropper.js의 마우스 드래그 이벤트를 활용하여 이미지를 움직이는 기능을 구현할 수 있습니다. 이외에도 Cropper.js는 다양한 기능을 제공하므로 필요한 작업에 맞게 활용할 수 있습니다.

더 자세한 내용은 Cropper.js 공식 문서를 참조하시기 바랍니다.