Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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
- Android
- React
- spring boots
- JavaScript
- 오퍼월
- 코딩테스트
- nginx
- docker
- it
- 개발
- Express
- css
- nuxt
- Jenkins
- react-native
- NanoHttpd
- 오블완
- toml
- kotlin
- 백준
- AWS
- Next
- 티스토리챌린지
- EC2
- 광고 id
- chrome
- python
- 코테
- TypeScript
- 파이썬
Archives
- Today
- Total
내맘대로 개발일지
[NextJS] base64 Image ReSize 본문

📱테스트 환경
"react": "18.2.0"
"react-dom": "18.2.0"
"typescript": "^5.1.6"
😢 내가 겪은 문제
전에 쓴 블로그 내용과 이어지는 내용인데
[NextJS] blob to base64 바꾸기
📱테스트 환경 "react": "18.2.0" "react-dom": "18.2.0" "typescript": "^5.1.6" 😢 내가 겪은 문제 canvas 에서 이미지를 다시 새롭게 그리려고 하고있는데, cavas.drawImage 에 나는 blob 형식을 넣었는데 구글에 검색
8735.tistory.com
바로 코드로 넘어가도록 하겠다. 기록의 목적이고 다른사람들도 그냥 코드만 원할것 같다. 내가 그랬어서 .. ㅎ
convertBlobToBase64.tsx
export const convertBlobToBase64 = (blob: Blob): Promise<string> => {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onload = function (event) {
if (event.target && event.target.result) {
const base64String = event.target.result.toString();
resolve(base64String);
} else {
reject(new Error("Blob to base64 conversion failed."));
}
};
reader.onerror = function (error) {
reject(error);
};
reader.readAsDataURL(blob);
});
};
이제 비동기 처리를 하면서 성공, 실패 여부를 확인하고 base64 형식의 string 으로 반환하는데
생소한건 FileReader 정도 일 것 같다.
FileReader는 파일 또는 Blob과 같은 데이터를 비동기적으로 읽을 수 있게 해주는 객체라고 생각하면 편하다.
reader.readAsDataURL(blob) 는 메서드를 호출하여 Blob 데이터를 읽기 시작한다.
이 메서드를 호출하면 Blob 데이터가 Base64로 인코딩되고 reader.onload 이벤트 핸들러가 호출되고 끝이난다.
'Javascript > Next' 카테고리의 다른 글
| [NEXTJS] Sentry 연결 (2) | 2024.11.07 |
|---|---|
| [JavaScript] Canvas 글자에 그림자 효과 (2) | 2023.10.26 |
| [NextJS] blob to base64 바꾸기 (0) | 2023.09.01 |
| [NextJS] Mobile Web 에서 이메일 시스템 모달창 띄우기 (0) | 2023.08.30 |
| [NextJS] 모바일인지 PC 인지 구별하는 방법 (0) | 2023.08.30 |