欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用canvas對(duì)video視頻某一刻截圖功能

  發(fā)布時(shí)間:2021-09-16 16:48:12   作者:佚名   我要評(píng)論
我本次的需求是多人視頻中對(duì)某一視頻某一刻的截圖,展示視頻直接用的原生video標(biāo)簽,今天通過使用canvas對(duì)video視頻某一刻截圖功能,感興趣的朋友跟隨小編一起看看吧

前言

本次使用的是canvas.drawImage()實(shí)現(xiàn)截圖功能, 關(guān)于api支持的dom元素、基本參數(shù),可點(diǎn)擊查詢下面連接 CanvasRenderingContext2D.drawImage()

處理過程

我本次的需求是多人視頻中對(duì)某一視頻某一刻的截圖,展示視頻直接用的原生video標(biāo)簽

1、首先獲取video元素和創(chuàng)建canvas

const video = document.getElementById('video');
const canvas = document.createElement("canvas");
const canvasCtx = canvas.getContext("2d") 

2、截圖的像素大小及優(yōu)化

devicePixelRatio 能夠返回當(dāng)前顯示設(shè)備的物理像素分辨率與 CSS 像素分辨率的比率,能夠更好還原真實(shí)的視頻場景,具體參考官方

const ratio = window.devicePixelRatio || 1;
canvasCtx.scale(ratio, ratio);

3、處理canvas畫布

// canvas大小與圖片大小保持一致,截圖沒有多余
canvas.width = video.offsetWidth * ratio;
canvas.height = video.offsetHeight * ratio;

4、生成canvas并轉(zhuǎn)化成自己需要的格式,我這里就直接轉(zhuǎn)成base64了
 

canvasCtx.drawImage(video, 0, 0, canvas.width, canvas.height)
const imgBase64 = canvas.toDataURL("image/png");

到此這篇關(guān)于使用canvas對(duì)video視頻某一刻截圖的文章就介紹到這了,更多相關(guān)canvas視頻截圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論