[4] ์ด๋ฏธ์ง ์ ์ฅํ๋ ๋ฒํผ ๋ง๋ค๊ธฐ
<button id="save_button">์ ์ฅํ๊ธฐ</button>
์ด๋ ๊ฒ ๋ฒํผ ์์๋ฅผ ๋ง๋ค์ด์ค ํ,
JS ๋ก ๋ฒํผ์ ํด๋ฆญํ์ ๋์ ์ด๋ฒคํธ ํจ์๋ฅผ ๋ง๋ค์ด์ค๋ค.
const onSaveButtonClick = () => {
const image = canvas.toDataURL('image/jpeg');
const link = document.createElement('a');
link.href = image;
link.download = 'ProfileByDDOZZA';
link.click();
alert('save!');
};
canva.toDataUrl()
: ์ด๋ฏธ์ง ํํ์ ํฌํจํ๋ ๋ฐ์ดํฐ URL์ ๋ฐํํ๋ค. ํ์ผ ํ์์ ์ง์ ํ ์ ์๋๋ฐ, ๋ฐ๋ก ์ง์ ํ์ง ์์ผ๋ฉด PNG ํ์์ผ๋ก ๋ด๋ณด๋ด์ง๋ค. ๋ง์ ๊ฒฝ์ฐ์ image/jpeg ํน์ image/webp ํ์๋ ์ง์๋๋ค. ์ํ๋ ํ์ ์ด ์๋ค๋ฉด ๊ดํธ ์์ ์จ์ฃผ๋ฉด ๋๋ค.
<a>.href ์ ์ด๋ฏธ์ง ์์ฑํด์ค ์ด๋ฏธ์ง url ์ ๋ฃ์ด์ฃผ๊ณ ,
<a>.download ๋ก ์ฌ์ฉ์์๊ฒ URL ์ ์ ์ฅํ ์ง ๋ฌผ์ด๋ณธ๋ค. ๊ฐ์ ์ง์ ํ๋ฉด ํ์ผ ๋ช ์ด ๋๋ค.
link ์ ํด๋ฆญ ์ด๋ฒคํธ๋ฅผ ๋ฃ์ด์ค๋ค.
์ ์ฅ ์๋์ ๋ฃ์ด์คฌ๋๋ฐ, ํ์ธ์ ํด๋ฆญํด์ผํด์ 0.5. ์ด ๋ค์ ์ฌ๋ผ์ง๊ฒ ๋ง๋ค์ด์ผ๊ฒ ๋ค.
์ ์ ์ฅ๋๋ค!
https://developer.mozilla.org/ko/docs/Web/API/HTMLElement/click