[javascript] Cropper.js를 사용하여 이미지의 비율 유지하기

이미지를 자르고 조정할 때 일반적으로 비율을 유지하는 것은 중요합니다. Cropper.js 라이브러리는 사용자가 이미지를 자르고 조정할 때 쉽게 비율을 유지할 수 있도록 도와줍니다. 이번 블로그에서는 Cropper.js를 사용하여 이미지의 비율을 유지하는 방법에 대해 알아보겠습니다.

Cropper.js란?

Cropper.js는 웹 애플리케이션에서 이미지 자르기와 조정을 위한 강력한 JavaScript 라이브러리입니다. 사용자가 이미지를 선택하고 설정한 비율에 맞게 자를 수 있도록 도와주는 편리한 기능을 제공합니다. Cropper.js는 jQuery나 다른 JavaScript 프레임워크에 의존하지 않으며, 웹 표준으로 작동합니다.

Cropper.js 설치

먼저 Cropper.js를 사용하기 위해 공식 GitHub 저장소에서 최신 버전을 다운로드하거나, 패키지 매니저를 통해 설치할 수 있습니다.

npm을 사용하는 경우

npm install cropperjs

yarn을 사용하는 경우

yarn add cropperjs

Cropper.js 사용법

Cropper.js를 사용하기 위해 HTML 문서에 <img> 요소를 추가하고, Cropper.js를 초기화해야 합니다.

<!DOCTYPE html>
<html>

<head>
  <title>Cropper.js Example</title>
  <link rel="stylesheet" href="path/to/cropper.min.css" />
</head>

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

  <script src="path/to/cropper.min.js"></script>
  <script>
    var image = document.getElementById('image');
    var cropper = new Cropper(image, {
      aspectRatio: 16 / 9,
      // 비율을 16:9로 설정합니다.
      viewMode: 1,
      // 이미지를 가득 채울 수 있도록 합니다.
      autoCropArea: 0.75,
      // 자동으로 이미지를 자를 영역의 비율을 설정합니다.
      // 1보다 작은 값이면 이미지가 자동으로 자릅니다.
      guides: true,
      // 가이드 라인을 활성화합니다.
      center: true,
      // 자르는 영역을 화면 중앙에 정렬합니다.
      highlight: true,
      // 자르는 영역의 하이라이트를 활성화합니다.
      dragMode: 'crop',
      // 드래그 모드를 crop으로 설정합니다.
      cropBoxMovable: false,
      // 자르는 영역의 이동을 비활성화합니다.
      cropBoxResizable: false,
      // 자르는 영역의 크기 조정을 비활성화합니다.
      toggleDragModeOnDblclick: false,
      // 더블 클릭시 드래그 모드 변경을 비활성화합니다.
    });
  </script>
</body>

</html>

위의 예시에서는 #image로 ID가 지정된 <img> 요소를 Cropper.js로 초기화하고 있습니다. aspectRatio 속성으로 비율을 설정할 수 있으며, viewMode 속성으로 이미지를 가득 채울 수 있도록 합니다. autoCropArea 속성으로 자르는 영역의 비율을 조정할 수 있으며, guides 속성으로 가이드 라인을 활성화할 수 있습니다.

위의 코드를 실행하면 이미지를 자를 수 있는 Cropper.js 인터페이스가 표시됩니다. 비율을 유지하면서 이미지를 자르는 기능을 사용할 수 있습니다.

결론

Cropper.js를 사용하면 웹 애플리케이션에서 이미지를 쉽게 자르고 조정할 수 있습니다. 특히 이미지의 비율을 유지하면서 자르는 기능은 사용자에게 더 편리한 경험을 제공할 수 있습니다. Cropper.js는 강력한 JavaScript 라이브러리로서, 이미지 편집 기능이 필요한 프로젝트에 유용하게 사용될 수 있습니다.


참고: