技术开发 频道

HTML5新特性开发者实践之Canvas线条篇

  下面讲解如何在canvas中绘画文字。绘画文字有如下方法:

  font [ = value ] 设置字体,跟CSS中设置字体一样

  textAlign [ = value ] 设置文字的位置方向,可以设置为start, end, left, right, 和center

  textBaseline [ = value ] 文字竖直对齐方式。可取属性值:top, hanging, middle,alphabetic, ideographic,更详细的关于textBaseline属性介绍,请参考这里

  fillText(text, x, y [, maxWidth ] ) 在指定的坐标上填充文字

  strokeText(text, x, y [, maxWidth ] ) –在指定的坐标上用勾画文字

  下面是一个例子:

context.font = ’24px “Tahoma”‘;

  context.fillText(“Hello World!”,
0, 0);

  结果为:
 



 

  如果要绘制透明的话,可以这样通过fillStyle指定

context.fillStyle = “rgba(0, 0, 0, 0.2)”;

  下图是效果
 


  假如要在加点阴影效果的话也是十分容易的,可以使用shadow对象即可:

context.shadowOffsetX = 5;

  context.shadowOffsetY
= 5;

  context.shadowBlur
= 5;

  context.shadowColor
= “rgba(0, 0, 0, 1)”;

  



 

       图片和视频

       下面介绍下如何在canvas中绘制图片和处理视频相关。一个问题是为什么不用传统的<img>标签呢?原因是如果结合canvas使用的话,可以充分利用canvas各类API的强大功能做出很眩的效果。下面是在canvas画布上,直接把一张图片绘画在上面了,使用的是drawImage方法:

var image = document.getElementById(“mySheep”);

  context.drawImage(image,
10, 10, 128, 128);

  

 


  一旦图片跟canvas结合了,就可以做各类的动画变换等效果了。

0
相关文章