Skip to content

Version 1.4.0

Latest
Compare
Choose a tag to compare
@redgoose-dev redgoose-dev released this 06 Jun 18:55
· 1 commit to main since this release

여러가지 이슈 처리를 하면서 웹 워커라는것을 알게되어 메이저 업데이트를 하면서 코드를 일부 새로 작성하게 되었습니다.
사용 방법까지 변경하게 되어 버전을 크게 올리게 되었습니다.

주의

패키지 사용하는 방식이 변경되었습니다.
만약 클래스 방식을 그대로 사용하고싶거나 코드를 고치기 힘들다면 1.3.x 버전 그대로 유지하세요!

웹 워커 지원

현재까지의 이미지 리사이즈를 처리하는 도중에 UI 화면이 버벅이는 현상이 발생했습니다. (클라이언트 성능에 비해 큰 이미지를 리사이즈 하는 경우)
우연히 웹 워커 API라는것을 알게되어 도입하기로 하였습니다.

이제는 이미지 리사이즈 도중에 UI를 처리하는 메인 쓰레드에 부담주지 않게 되었습니다.

클래스에서 함수로 변경

다른 프로그램에서 이미지 리사이즈 패키지를 사용해보면서 클래스로 사용하점에서 굳이 이렇게 번잡하게 써야하나 의문이 들었습니다. (인스턴스 만들고, 메서드를 실행하여 사용)

실행하고 끝나는 수준인 도구라서 클래스에서 함수로 변경할 결심을 하고 일부 재작업을 했습니다.
클래스는 그대로 남겨둘까 고민했지만 안쓰는 코드들만 주렁주렁 달리면서 복잡하게 보여 과감하게 클래스 부분은 다 지웠습니다.

업그레이드 가이드

1.4.x 버전으로 업그레이드 하려면 클래스를 인스턴스로 사용하는 방식에서 함수를 실행하는 방식으로 변경해야 합니다.

1.3.x의 코드

import ImageResize from 'image-resize';

const resize = new ImageResize({
  format: 'png',
  width: 640,
});
const result = await resize.play('image.jpg')

1.4.x의 코드

import imageResize from 'image-resize'

let res = await imageResize('image.jpg', {
  format: 'png',
  width: 640,
})

위와같이 resize.play()메서드 부분을 함수로 바꿔주면 됩니다.