新闻  |   论坛  |   博客  |   在线研讨会
扣丁学堂浅谈canvas绘制视频封面的方法
扣丁学堂1 | 2021-01-20 14:13:41    阅读:983   发布文章

今天小编给大家分享一下canvas绘制视频封面的方法,小编觉得对喜欢HTML5的小伙伴会有帮助,现在分享给大家,让大家做个参考。

扣丁学堂浅谈canvas绘制视频封面的方法

一、需求:上传视频,同时截取视频某一帧作为视频的封面。

二、实现思路:利用canvas绘制图像的功能,绘制图像某一帧,这里绘制了第一帧,很简单就实现了。


三、代码:


<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>capture screen</title>
    <style type="text/css">
        video,#container{width: 300px;height: 200px;}
        #container>img{width: 100%;}
    </style>
</head>
<body>
    <video id="video" controls="controls">
        <source src="video/video_test.mp4">
    </video>
    <div id="container"></div>
    <script type="text/javascript">
        (function() {
            var video, container;
            var scale = 0.8;
            var initialize = function() {
                container = document.getElementById("container");
                video = document.getElementById("video");
                video.addEventListener('loadeddata', captureImage);
            };
            var captureImage = function() {
                var canvas = document.createElement("canvas");
                canvas.width = video.videoWidth * scale;
                canvas.height = video.videoHeight * scale;
            canvas.getContext('2d').drawImage(video, 0, 0, canvas.width, canvas.height);
                var img = document.createElement("img");
                img.src = canvas.toDataURL("image/png");//转换成base64图片,地址拿出来就可以直接使用
                container.appendChild(img);
            };
            initialize();
        })();
    </script>
</body>
</html>


关于canvas绘制视频封面的方法扣丁学堂HTML5在线学习小编就给大家说这么多,希望对大家的学习有所帮助,想要了解更多HTML5开发方面内容的小伙伴可以登录扣丁学堂官网咨询。扣丁学堂是专业的HTML5培训机构,不仅有专业的老师和与时俱进的课程体系,还有大量的HTML5在线教程供学员观看学习,想要学好HTML5开发的小伙伴快快行动吧。扣丁学堂H5技术交流群:692172929。微信号:codingbb

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客