일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Route53
- JavaScript
- TypeScript
- 프로그래머스
- axios
- react-xml-parser
- gitignore
- 가상 DOM
- AWS
- window.postMessage
- API Gateway
- react-admin
- readableStream
- timeinput
- domtoimage
- react-hook-form
- dynamodb
- cognito
- react
- node
- electron
- signIn
- yml
- react DOM
- electron-builder
- zerocho
- jimp
- react-sortable-hoc
- icrawler
- xlsx
Archives
- Today
- Total
꾸준히 공부하는 개발자
[Node.js] Jimp 이용하여 비율에 맞게 resize 본문
rawfile을 비율에 맞게 resize 할 일이 생겨 jimp 라는 모듈을 사용하게 되었다.
const imageResize = async (rawFile, strictSize) => {
const resizeImage = await Jimp.read(rawFile.preview)
let {width, height} = resizeImage.bitmap
if (width > strictSize && width > height) {
height = strictSize / width * height
width = strictSize
} else if (height > strictSize && height > width) {
width = strictSize / height * width
height = strictSize
} else if (width > strictSize && height > strictSize) {
if(width > height){
height = strictSize / width * height
width = strictSize
}else{
width = strictSize / height * width
height = strictSize
}
}
await resizeImage.resize(width, height)
const data = await resizeImage.getBufferAsync(rawFile.type)
return data
}
document를 제대로 안읽고 썻더니 나중에 코드 다 짜고 보니 auto로 비율을 맞춰주는 방법이 있었다...
image.resize(Jimp.auto, 300)
이런식으로하면 heigth 300 에 맞춰 width가 저절로 비율에맞게 생성된다.
'Node.js' 카테고리의 다른 글
[Node.js] ReadableStream 을 이용한 dblp.xml 파일 받아오기 (0) | 2019.12.20 |
---|---|
[Node.js] bluebird.js Promise (concurrency) (0) | 2019.12.18 |
[Node.js] Jimp crop을 이용하여, 사진 자르기 (0) | 2019.11.19 |
[Node.js] local에서 blob으로 오는 xlsx 읽기 (0) | 2019.11.09 |
[Node.js] xlsx를 이용하여 excel 다운로드 (0) | 2019.11.09 |
Comments