video 요소의 스크린 샷을 찍는 북마크릿
개요
YouTube 또는 Nico Nico 동영상의 한 장면을 이미지로 저장하고 싶을 때 어떻게합니까?
OS의 스크린 샷 기능? 하지만 괜찮습니다만, 대개 구형 선택할 필요가 있기 때문에 번거롭고, 예쁘게 선택할 수 없으면 싫지요? 나는 싫다.
그래서 엔지니어처럼 video 요소에 대해 살펴보면 (대부분의 동영상은 video 요소로 구현되어 있기 때문에) Canvas의 drawImage 함수에 그대로 전달하여 그릴 수 있다는 것을 알았습니다.
즉 가상 Canvas에 video 요소를 그려 스크립트 다운로드하는 북마크릿을 만들면 원터치로 동영상의 스크린샷을 촬영할 수 있을 것 같습니다.
코드
라는 이유로 만든 것이 이쪽이 됩니다.
javascript: (() => { const video = document.querySelector('video'); if (video) { const canvas = document.createElement('canvas'); canvas.width = video.clientWidth; canvas.height = video.clientHeight; const context = canvas.getContext('2d'); context.drawImage(video, 0, 0, canvas.width, canvas.height); const image = new Image(); image.src = canvas.toDataURL('image/png'); const a = document.createElement('a'); a.download = `${location.host}_${new Date().toISOString()}.png`; a.target = '_blank'; a.href = image.src; a.click(); } else { alert('There is no video tag.'); } })(); void 0;
설명은 할애…북마크의 URL 란에 복사하면 OK입니다.
시사는 여기 에서 실시했습니다. 나쇼지오 좋네요.
주의점
동작 확인 서비스
✅ 니코니코 동영상(HTML5판만)
✅ 니코니코 생방송(HTML5판만)
✅ Twitch
✅ YouTube
❌ Vimeo
한 사람
360° 카메라의 동영상을 촬영하면 이렇게 되었습니다.
Reference
이 문제에 관하여(video 요소의 스크린 샷을 찍는 북마크릿), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mimonelu/items/37cbff837bda75e923b4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)