js HTML5多媒体影音播放
(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )
之前曾经介绍过,在HTML5中可以通过<video>标签在网页中播放影片,且不需要再安装额外的插件,此功能已经带给用户极大的便利。但基本的<video>标签只提供了简单功能的播放器界面,如果想要改变播放器的外观和功能,只能结合<canvas>标签和javascript语句,就能制作出酷炫的播放控制器。
{drawImage}
画布canvas如何与视频video标签结合,达到制作各种视频功能的效果呢?其秘诀在于通过画布重新描绘一次视频的内容,将视频的每个画面都转换成画布的图像,这样就可以通过javascript语言所提供的图像控制方法来操控它们。所以炫酷播放器所使用的视频功能,并不针对video,而是针对描绘出影像的canvas。
能够描绘影像到画布中的方法是“drawImage",此方法允许在canvas中插入画布(canvas),图像(img)和视频(video)等元素。
drawImage方法有三种:
drawImage(image,dx,dy)//原比例绘制图像
drawImage(image,dx,dy,dw,dh)//按设置长宽绘制图像
drawImage(image,sx,sy,sw,sh,dx,dy,dw,dh)//裁切后绘制图像
<html> <head> <meta charset="utf-8"/> <style> canvas{ border:1px solid black; } </style> <script > function draw(){ var imgx = new Image(); imgx.src = 'img/gophers-Slice_Scoreboard.png'; imgx.onload = function(){ var canvas = document.getElementById('myCanvas'); var context = canvas.getContext('2d'); context.drawImage(this,20,20,75,75); } } </script> </head> <body onload="draw()"> <p>Image:</p> <img id="pic"src="/UploadFiles/2021-04-02/gophers-Slice_Scoreboard.png">简单地通过drawImage描绘图像也许看不出来canvas的强大,其实真正精彩的是可以通过画布上描绘的结果加入javascript语句来实现的特效效果或功能。
接下来示范如何用javascript指令动态调整视频播放器的大小。
<html> <head> <meta charset="utf-8"/> <style> </style> <script > function eventWindowLoaded(){ var videoElement=document.getElementById("theVideo"); var widthtoHeightRatio=videoElement.width/videoElement.height; var sizeElement=document.getElementById("videoSize"); sizeElement.addEventListener('change',videoSizeChanged,false); function videoChanged(e){ var target=e.target; var videoElement=document.getElementById("theVideo"); videoElement.width=target.value; videoElement.height=target.value/widthtoHeightRatio; } } </script> </head> <body onload="eventWindowLoaded()"> <div> <form>Video Size: <input type="range" id="videoSize" min="80" max="1280" step="1" value="320"/> </form> </div> <div> <video autoplay loop controls id="theVideo" src="/UploadFiles/2021-04-02/funny.mp4">以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
下一篇:基于JavaScript实现前端文件的断点续传
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?