什么是 canvas

<canvas> 是HTML5中用于图形的绘制的元素。<canvas> 标签只是图形容器,canvas 元素本身是没有绘图能力的。所有的绘制工作必须在 JavaScript 内部完成。


Canvas(画布)简介

一个画布在网页中是一个矩形框,通过 <canvas> 元素来绘制.

注意: 默认情况下 <canvas> 元素没有边框和内容。

<canvas>简单实例如下:

<canvas id="myCanvas" width="200" height="100"></canvas>

注意: 标签通常需要指定一个id属性 (脚本中经常引用), width 和 height 属性定义的画布的大小.


案例:绘制15*15的五子棋棋盘

本例所用知识点:

首先,找到 <canvas> 元素:

var c=document.getElementById("myCanvas");

然后,创建 context 对象:

var ctx=c.getContext("2d");

getContext("2d") 对象是内建的 HTML5 对象,拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

fillRect(x,y,width,height) 方法定义了矩形当前的填充方式。

在Canvas上画线,我们将使用以下两种方法:

  • moveTo(x,y) 定义线条开始坐标
  • lineTo(x,y) 定义线条结束坐标
  • stroke()   方法来绘制线条

附上完整代码:

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title></title>
<style type="text/css">
.chessboard{display:block;margin:50px auto;
}
</style><script>function drawChessBoard () {var c=document.getElementById("mycanvas");context=c.getContext("2d");context.fillRect(15,435,15,435);for(var i = 0; i < 15; i++){context.moveTo(15 + i * 30 , 15);context.lineTo(15 + i * 30 , 435);//垂直方向画15根,相距30pxcontext.stroke();context.moveTo(15 , 15 + i * 30);context.lineTo(435 , 15 + i * 30); //水平方向画15根,相距30pxcontext.stroke();}}</script>
</head>
<body onload="drawChessBoard()"><canvas id="mycanvas" width="450px" height="450px"class="chessboard"></canvas></body>
</html>

canvas绘制简单五子棋棋盘相关推荐

  1. java canvas 画图片_[Java教程][HTML5] Canvas绘制简单图片

    [Java教程][HTML5] Canvas绘制简单图片 0 2016-05-13 13:00:04 获取Image对象,new出来 定义Image对象的src属性,参数:图片路径 定义Image对象 ...

  2. html5 简单图片效果,【HTML5】Canvas绘制简单图片教程,

    [HTML5]Canvas绘制简单图片教程, 获取Image对象,new出来 定义Image对象的src属性,参数:图片路径 定义Image对象的onload方法,调用context对象的drawIm ...

  3. 用canvas绘制简单的几何图形

    文章目录 添加canvas 调用canvas的API接口 绘制简单的图形 直线 三角形 矩形 圆 清空画布 canvas是一块矩形区域,相当于一块画布.它本身不具有绘图功能,绘图功能主要是由JavaS ...

  4. canvas绘制简单动画思路总结

    使用canvas绘制动画原理就是不断的绘制canvas图形,当画的速度够快,看上去就能动起来.这里需要了解一下屏幕刷新率,根据效果来调整绘制的速度(1秒刷新60次 屏幕刷新率保持在60次/秒保障动画效 ...

  5. 使用html5 canvas绘制简单图形小作品~灰太狼

    <!-- 作者:1457225624@qq.com 时间:xxxx-xx-xx 描述:大家好!我是小张,今天我用html5,,canvas的画布画出了一个小作品, 画的不好看,,,还请原谅,,下 ...

  6. html5 直线的两头弯曲,html5教程 (二)(canvas绘制简单的直线)

    Html5_convas var elem = document.getElementById("myConvas"); if (elem && elem.getC ...

  7. android 用canvas 绘制简单圆形时钟

    写笔记写写不过人家 http://blog.csdn.net/u010575173/article/details/52701936 1,Android - Paint基础 在自定义控件时,经常需要使 ...

  8. html+js:画布canvas + 绘制简单矩形

    html5支持canvas标签 canvas创建一个画布,通过.getContext方法创建一个CanvasRenderingContext2D对象进行图案的绘制,具体的方法可以前往HTML Canv ...

  9. canvas绘制中国象棋棋盘

    棋盘 board.html <!doctype html> <html><head><meta charset="gb2312"/> ...

最新文章

  1. Ubuntu修改IP地址和MAC地址
  2. 关于myeclipse buildpath的jar包不能复制到tomcat lib下的问题
  3. 破解sina新浪邮箱密码
  4. 计算机专业自然辩证法期末论文,清华大学自然辩证法-期末论文.docx
  5. linux加密框架 crypto 算法管理 - 算法查找接口 crypto_alg_mod_lookup
  6. CSS修改iframe内的样式问题
  7. flask框架+pygal+sqlit3搭建图形化业务数据分析平台
  8. ubuntu16.04 gnome环境,怎么样下载使用monaco字体
  9. 如何利用网管软件管控SNMP协议的网络设备
  10. 如何设置局域网内的固定IP地址?
  11. 需要管理员权限才能删除文件夹
  12. 工作-safari时间格式
  13. 豆瓣排名前500的电视剧
  14. python 乡镇轮廓 高德_Python爬虫终极解决方案-以获取高德地图小区边界为例
  15. MIMO技术杂谈(三):知己知彼,百战不殆--信道信息的获取和应用
  16. Kali Linux中安装IDLE的方法
  17. 《国度》之大学者联盟全解
  18. 推荐一款看书学习必备的读书笔记app
  19. 后缀.phobos勒索病毒解密成功恢复sql文件 数据恢复
  20. 微信营销分析之最有效的微信推广技巧

热门文章

  1. WPF输入框双向绑定Decimal类等数据无法输入小数点
  2. 鱼眼图像的校正(Python实现)
  3. 不看会后悔系列之好看又好用的样机模板推荐!
  4. Tika结合Tesseract-OCR 实现光学汉字识别(简体、宋体的识别率百分之百)—附Java源码实现及真实测试数据和训练集下载地址...
  5. 百度小程序以及如何进行SEO?
  6. Win7系统英文输入法不见了找回的方法
  7. Qt如何设置控件字体有下划线
  8. 红蓝对抗之邮件钓鱼攻击
  9. Julia常用包简介
  10. SVG:linearGradient渐变在直线上失效的问题解决方案