微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Canvas元素基本知识

canvas元素

如果说到在网页中绘制图形以及动画,大部分人会想到flash,但是是要想在浏览器中运行flash的画,还必须装额外的插件,而且不是所有的浏览器都会支持flash。在html5中引入了标签canvas,让我们不用装任何其他的插件,就可以在实现html5的浏览器中实现图形绘制。

Canvas使用示例

如何使用canvas元素,我们先来看一个简单的例子:

<!DOCTYPE html>
<html>
<head lang="en">
    <Meta charset="UTF-8">
    <title></title>
    <style> body{ background-color: #dddddd; } #canvas{ margin: 10px; padding: 10px; background: #ffffff; border:thin inset #aaaaaa; } </style>
</head>
<body>
    <canvas id="canvas" width="600" height="300">
        canvas not supported
    </canvas>
    <script type="text/javascript"> var canvas = document.getElementById("canvas"),context = canvas.getContext("2d"); context.font = '38pt Arial'; context.fillStyle = 'cornflowerblue'; context.strokeStyle = 'blue'; context.strokeText("Hello canvas",canvas.width/2 - 150,canvas.height/2 + 15); </script>
</body>
</html>

可以看到对待canvas标签可以像对待其他的任何标准的html标签一样,通过js能够与其很好的交互,也能通过css给canvas设置样式。

  • 通过document.getElementById()获取到canvas元素。
  • 通过canvas对象的getContext(“2d”)方法获取绘图环境,这个绘图环境是什么后面会详细介绍
  • 使用绘图环境在canvas元素上面进行图形绘制

通过绘图环境,我们设置了font,fillStyle,stokeStyle等属性,然后对文本进行填充以及描边,strokeText()方法使用strokeStyle属性描述指定文字的轮廓线,fillText()方法使用fillStype属性来填充字符

canvas元素只是一个画布,并没有提供很多的api,只有三个元素以及两个方法。 * width:画布的宽度 * height:画布的高度 * getContext()获取绘图环境,前面的例子看到绘制图形的时候都是通过这个绘图环境提供的api来实现的,如果canvas元素是画布,那么绘图环境就相当于画笔以及颜料 * toDataUrl(type,quality)返回一个二进制数据,可以作为img元素的src值,quality为0~1之间的浮点值,表示图片的质量

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。