冯佳丽20201009
学习日志
html5
视频使用方法,音频同理
案例:
<video id="vdo" src=""></video>
<button type="button" id="play">播放</button>
<button type="button" id="pause">暂停</button>
var vdo=document.getElementById('vdo')
var play=document.getElementById('play')
// var pause=document.getElementById('pause')
// play.onclick=()=>{
// vdo.play()
// }
// play.onclick=()=>{
// vdo.pause()
// }
//一个按钮
play.onclick=()=>{
if(vdo.pause){
vdo.play()
}else{
vdo.pause()
}
}
在html5中canvas是非常重要的一个部分
canvas 通过 JavaScript 来绘制 2D 图形。canvas 是逐像素进行渲染的。在 canvas 中,一旦图形被绘制完成,它就不会继续得到浏览器的关注,如果其位置发生变化,那么整个场景也需要重新绘制,包括任何已经被图形覆盖的对象
canvas的特点
- 依赖屏幕分辨率
- 不支持事件处理器
- 弱的文本渲染能力
- 能够以 .png 或 .jpg 格式保存结果图像
- 最适合图像密集型的游戏,其中的许多对象会被频繁重绘
- 颜色非常细腻
- 不可以放大或缩小
案例:
基础步骤
//创建画布
<canvas id="cvs" width="800" height="400" style="background-color: darkgray;"></canvas>
//1、获取画布
var cvs=document.getElementById('cvs')
//2、获取画笔
var ctx=cvs.getContext('2d');
可以改变的步骤,关于canvas基本的一些练习
// var canWidth=cvs.width;
// var canHeight=cvs.height;
// ctx.strokeStyle="#7a00bc"
// ctx.lineWidth=40
// ctx.globalAlpha=0.4
// ctx.lineCap='round'
// // ctx.fillRect(canWidth/2,canHeight,30,-200)
// //1、开始路径
// ctx.beginPath()
// //2、确定路径的起点
// ctx.moveTo(canWidth/2,canHeight)
// //3、绘制一条线段
// ctx.lineTo(canWidth/2,200)
// //4、完成路径绘制
// ctx.stroke()
// //结束路径
// ctx.closePath()
//绘制五角星
// ctx.strokeStyle="#ff0000"
// ctx.beginPath()
// ctx.moveTo(100,200)
// ctx.lineTo(300,200)
// ctx.lineTo(200,350)
// ctx.lineTo(120,120)
// ctx.lineTo(270,300)
// ctx.lineTo(100,200)
// ctx.stroke()
// ctx.closePath()
//绘制圆
// ctx.strokeStyle="#ff0000"
// ctx.arc(200,200,50,0,Math.PI*2)
// ctx.fill()
// ctx.stroke()
// ctx.strokeStyle="#ff0000"
// ctx.arc(100,100,40,0,Math.PI*2)
// ctx.fill()
//剪切任意的形状
ctx.strokeStyle="#f00"
ctx.rect(50,20,200,120)
ctx.stroke()
ctx.clip();
// 在 clip() 之后绘制绿色矩形
ctx.fillStyle="green";
ctx.fillRect(0,0,150,100);
//设置画笔样式,对画笔样式设置都要放在绘制之前
// ctx.strokeStyle="aqua";
// //绘制描边矩形
// ctx.strokeRect(50,50,100,100)
// //设置画笔透明度
// ctx.globalAlpha=.7
// //填充颜色
// ctx.fillStyle="mediumpurple";
// //绘制实心矩形
// ctx.fillRect(80,80,50,50)
// ctx.textAlign='center'
// ctx.textBaseline='middle'
// ctx.font='50px 宋体'
// //绘制描边文本
// ctx.strokeText("今天很冷1",200,200)
// //绘制实体文本
// ctx.fillText("今天很冷2",250,220)
// console.log(ctx.measureText("今天很冷1").width)
// // ctx.clearRect(0,0,800,600)
学习感受
需要记忆的基础很多。
点赞
评论留言