프로젝트 정리/스프링과 JPA 기반 웹 애플리케이션 개발

27. 프로필 이미지 변경

아바타 이미지 잘라서 저장하기

Cropper.js를 이용한 프로필 이미지 잘라내기
잘라낸 후 변경 된 모습

프론트 라이브러리 설치

  • Cropper.JS
  • npm install cropper
  • npm install jquery-cropper

 

Cropper.js 사용하기

 
$("#profile-image-file").change(function(e) {
    if (e.target.files.length === 1) {
        const reader = new FileReader();
        reader.onload = e => {
            if (e.target.result) {
                let img = document.createElement("img");
                img.id = 'new-profile';
                img.src = e.target.result;
                img.width = 250;

                $newProfileImage.html(img);
                $newProfileImage.show();
                $currentProfileImage.hide();

                let $newImage = $(img);
                $newImage.cropper({aspectRatio: 1});
                cropper = $newImage.data('cropper');

                $cutBtn.show();
                $confirmBtn.hide();
                $resetBtn.show();
            }
        };

        reader.readAsDataURL(e.target.files[0]);
    }
});

 

DataURL 이란?

  • data: 라는 접두어를 가진 URL로 파일을 문서에 내장 시킬때 사용할 수 있다.
  • 이미지를 DataURL로 저장할 수 있다.

 

실습

 

26. 프로필 수정 테스트 · devjun63/whiteship-studyolle@81e1b2d

Permalink This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. Browse files 26. 프로필 수정 테스트 Loading branch information Showing 5 changed files with 148 additions and 2 deletions. +

github.com

 

27. 프로필 이미지 변경 · devjun63/whiteship-studyolle@0be78cc

Cropper.js를 통한 이미지 잘라내기

github.com