《HTML5游戏编程核心技术与实战》——2.6 其他全局属性

简介:

本节书摘来自异步社区《HTML5游戏编程核心技术与实战》一书中的第2章,第2.6节,作者: 向峰 更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.6 其他全局属性

在context中还有一些常见的全局属性,做一些了解。

  • globalAlpha:透明度,这个值用来设置在画布上绘制的透明度,值的范围从0~1之间,使用这个属性我们可以完成一些常见的效果,比如游戏中常见的淡入淡出效果。
    以下代码展示了一张图片淡入,也就是逐渐显示的效果。
<body>
  <h2>淡入</h2>
  <img src="img/t1.jpg" id="img1" style="display:none" /><br>
  <canvas id="can" width="300" height="200"></canvas>
</body>
<script>
  function $(id)
  {
   return document.getElementById(id);
  } 
  function draw()
  {
   //清除屏幕   
   ctx.drawImage($("img1"), 0, 0);   
  } 
  document.body.onload = function()
  {
   //获取canvas的上下文
   ctx = $("can").getContext("2d");
   //获取图片的宽高度
   $("can").width = $("img1").width,
   $("can").height = $("img1").height;
   ctx.globalAlpha = 0;
   var tHandle = window.setInterval(function(){
     ctx.globalAlpha+=0.05;
     draw();
     if(ctx.globalAlpha>=0.95)
     {
      window.clearInterval(tHandle);
     }
   }, 100);
  }  
</script>
  • globalCompositeOperation:全局混合模式,这个属性定义了如果在画布上绘制多个图像时,图像进行叠加的方式,也称为混合模式,类似于Photoshop这种图像处理软件中图层的叠加模式。表2-4列出了混合模式的可能值,表2-4中,正方形表示目标图像,圆形表示源图像。


7dc5e2ad0ef4a51e301153b320df53f5ba4a239c


00febe31ff74883e4103728f04e690bf4bb44c79


<a href=https://yqfile.alicdn.com/6299a233dea7c5ee33210c023882c3716ce6229e.png" >


b495cb5bcf16b47b58e381aaf816f5b3821b5309
相关文章
|
5月前
|
Web App开发 缓存 搜索推荐
HTML中meta标签中属性详解并设置页面缓存策略
HTML中meta标签中属性详解并设置页面缓存策略
283 0
|
6月前
|
前端开发
【HTML实战】把爱心代码放在自己的网站上是一种什么体验?
【HTML实战】把爱心代码放在自己的网站上是一种什么体验?
|
1月前
|
存储 开发者 SEO
|
1月前
|
移动开发 JavaScript 前端开发
编程笔记 html5&css&js 028 HTML输入属性(2/2)
编程笔记 html5&css&js 028 HTML输入属性(2/2)
|
1月前
|
JavaScript 前端开发
编程笔记 html5&css&js 027 HTML输入属性(1/2)
编程笔记 html5&css&js 027 HTML输入属性(1/2)
|
1月前
编程笔记 html5&css&js 023 HTML表单属性
编程笔记 html5&css&js 023 HTML表单属性
|
1月前
|
存储 移动开发 前端开发
编程笔记 html5&css&js 010 HTML全局属性
编程笔记 html5&css&js 010 HTML全局属性
|
2月前
|
移动开发 前端开发 JavaScript
分享24个强大的HTML属性,建议每位前端工程师都应该掌握!
HTML属性非常多,除了一些基础属性外,还有许多有用的特别强大的属性
|
3月前
|
XML JavaScript 数据格式
python - bs4提取XML/HTML中某个标签下的属性
python - bs4提取XML/HTML中某个标签下的属性
28 0