캔버스를 사용하여 이미지 다운로드 기능을 구현하는 html5의 자세한 예

巴扎黑
풀어 주다: 2017-09-02 10:01:55
원래의
3250명이 탐색했습니다.

이 글에서는 이미지 다운로드 기능을 구현하기 위해 캔버스를 사용한 HTML5의 샘플 코드를 주로 소개합니다. 필요한 친구들이 참고할 수 있습니다.

최근 프로젝트에서는 이미지 다운로드 기능이 필요합니다. 구현됨(아래 참조)

처음에는 a 태그의 download 속성을 사용하여 다운로드하는 것을 고려했습니다.


<a href="图片src" download="下载海报">
下载海报
</a>
로그인 후 복사

그러나 테스트를 통해 Safari에서는 다운로드한 파일에 확장자를 가질 수 없다는 것을 알았습니다. 그래서 마음을 바꿔 처리를 위해 캔버스를 사용해야 했습니다.

1. 이미지의 도메인 간 속성을 설정하려면 이미지에 crossOrigin='anonymous'를 추가해야 합니다.


img.crossOrigin = &#39;anonymous&#39;;
로그인 후 복사

2 이미지를 base64 형식으로 변환하려면 toDataURL을 사용하세요. 다운로드를 실행하는 시뮬레이션된 클릭 이벤트


canvas.toDataURL("image/png")
로그인 후 복사

전체 코드:


 var save_link = document.createElement(&#39;a&#39;);
     save_link.href = image;
     save_link.download =&#39;测试.png&#39;;
                           
 var clickevent = document.createEvent(&#39;MouseEvents&#39;);
     clickevent.initEvent(&#39;click&#39;, true, false);
     save_link.dispatchEvent(clickevent);
로그인 후 복사

위 내용은 캔버스를 사용하여 이미지 다운로드 기능을 구현하는 html5의 자세한 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿