본문 바로가기
프로그래밍 언어/Javascript

[자바스크립트] img 태그의 데이터를 base64로 인코딩 하자

by 연구자 공학코드 2020. 12. 27.

공지사항

  1. 제가 운영하는 네이버 카페 개발자 커뮤니티 코어큐브(https://cafe.naver.com/ewsncube)에 가입하시면 컴퓨터 관련 학습 자료와 질의응답을 제공받으실 수 있습니다.

728x90
반응형

HTML의 img 태그의 src에 파일 경로가 아닌 데이터를 직접 넣어도 브라우저가 인식하는 시대가 왔다. 데이터를 넣을 때는 base64로 파일 데이터를 인코딩해서 넣으면 되고 다음과 같이 표현이 가능하다.

BASE64로 인코딩된 img 태그 예시

<img id="logo" src="data:image/png;base64,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">

위의 img 태그를 넣으면 아래와 같은 그림이 표현된다.

자바스크립트에서 기존의 이미지 파일을 base64로 인코딩하는 방법은 2가지가 있다. 하나는 HTML5 CANVAS를 이용하여 변환하는 것이고 또 다른 하나는 자바스크립트의 File API인 FileReader를 이용하여 변환하는 방법이 있다.

HTML5 CANVAS를 이용하는 방법

<html>
<head>
	<title>ImgToBase64_canvas</title>
</head>
<body>
	<img id="logo" src="#">
	<script type = text/javascript>
	function imgToBase64ByCanvas(url) {
	  return new Promise((resolve, reject) => {
		let image = new Image();
		image.onload = () => {
		  let canvas = document.createElement('canvas');
		  canvas.width = image.naturalWidth;
		  canvas.height = image.naturalHeight;
		  canvas.getContext('2d').drawImage(image, 0, 0);

		  let uri = canvas.toDataURL('image/png', 1.0);
		  console.log(uri);
		  resolve(uri);
		  
		  document.getElementById('logo').setAttribute('src', uri);
		}
		image.src = url;
	  });
	}
	imgToBase64ByCanvas("./Logo_2013_Google.png");
	</script>
</body>
</html>

CANVAS를 생성하고 이 CANVAS의 가로와 세로의 크기를 설정하고 그릴 것을 2D로 지정한다음 BASE64로 변호나하고 있다. 이미지 형식과 품질을 지정하는 코드도 중간에 있는데 이미지 형식의 경우 이미지의 형식(MIME)에 따라 적절하게 값이 들어가도록 수정할 필요가 있다. 위와 같이 HTML을 구성하면 동작하는 것을 확인할 수 있다.

반응형

콘솔에서 동작하는 것을 확인한 화면

FileReader를 이용하는 방법

<html>
<head>
	<title>ImgToBase64_filereader</title>
</head>
<body>
	<img id="logo" src="#">
	<script type= text/javascript>
	function imgToBase64ByFileReader(url) {
	  return new Promise((resolve, reject) => {
		let xhr = new XMLHttpRequest();
		xhr.onload = () => {
		  let reader = new FileReader();
		  reader.onloadend = function () {
			resolve(reader.result);
			console.log(reader.result);
			document.getElementById('logo').setAttribute('src', reader.result);
		  }
		  reader.readAsDataURL(xhr.response);
		}
		xhr.open('GET', url);
		xhr.responseType = 'blob';
		xhr.send();
	  });
	}
	imgToBase64ByFileReader("Logo_2013_Google.png");
	</script>
</body>
</html>

이것도 마찬가지이다. CANVAS 처럼 여러 설정이 가능하지는 않지만 간단하게 데이터를 인코딩할 수 있고 CORS 같은 보안제한이 덜 있다는 것이 장점이다. 아래에 예제 자료를 첨부하였다.

ImgToBase64_examples.zip
0.02MB

참고자료

[1] pureainu, (Javascript) 이미지 파일 base64 인코딩/디코딩, 2018-03-04.

728x90
반응형

댓글