let video = document.createElement('video');video.style="width:0;height:0;position:fixed;right:-100%;"video.muted = 'muted';video.autoplay = 'autoplay';video.onloadeddata = function() { let { width, height } = getVideoSize(120, this.videoWidth, this.videoHeight); let canvas = document.createElement('canvas'); canvas.width = width; canvas.height = height; canvas.getContext('2d').drawImage(this, 0, 0, width, height); // 视频转换为图片 canvas.toDataURL('image/png') document.body.removeChild(video);}video.src = URL.createObjectURL(file.files[0]); // file本地文件document.body.appendChild(video);// 获取视频等比缩放宽高function getVideoSize(maxWidth, width, height) { if(maxWidth >= width) { return { width, height } } else { return { width: maxWidth, height: Math.floor(maxWidth / width * height) } }}