首页 / 知识
前端HTLM的canvas描述作图
2023-04-11 15:58:00

HTML5 <canvas> 标签用于绘制图像(通过脚本,通常是 JavaScript)。 不过,<canvas> 元素本身并没有绘制能力(它仅仅是图形的容器) - 您必须使用脚本来完成实际的绘图任务。 getContext() 方法可返回一个对象,该对象提供了用于在画布上绘图的方法和属性。 一般写法:<canvas id="tutorial"width="150"height="150"></canvas> (1)getContext() getContext()用来获得渲染上下文和它的绘画功能,只有一个参数,目前只支持2d,即: var canvas = document.getElementById('tutorial'); var ctx = canvas.getContext('2d'); getContext()可以用来检测当前浏览器是不是支持canvas,如果不支持可以用指定文本替代: var canvas = document.getElementById('tutorial'); if (canvas.getContext){ var ctx = canvas.getContext('2d');// 支持 } else { // 不支持,可以写相关提示文字 } 案例: <script type="text/javascript"> function draw(){ var canvas = document.getElementById('tutorial'); if (canvas.getContext){ var ctx = canvas.getContext('2d'); } } </script> <style type="text/css"> canvas { border: 1px solid black; } </style> <body onload="draw();"> <canvas id="tutorial" width="150" height="150"></canvas> </body> (2)绘制矩形 canvas提供了四种方法绘制矩形 rect(): 创建矩形,仅仅创建并未画出,仍需要fill或者stroke填充或者画出来! fillRect(x, y, width, height) 绘制一个填充的矩形 strokeRect(x, y, width, height) 绘制一个矩形的边框 clearRect(x, y, width, height)清 除指定矩形区域,让清除部分完全透明。 例子: function draw() { var canvas = document.getElementById('canvas'); if (canvas.getContext) { var ctx = canvas.getContext('2d'); ctx.fillRect(25,25,100,100);//绘制一个100*100矩形,默认黑色 ctx.clearRect(45,45,60,60);//删除一个60*60的矩形 ctx.strokeRect(50,50,50,50);//绘制一个50*50的边框 }} HTML 5 Canvas基础学习教程(1) (3)绘制路径 路径绘制图形需要的步骤: 1、首先,你需要创建路径起始点。 2、然后你使用画图命令去画出路径。 3、之后你把路径封闭。 4、一旦路径生成,你就能通过描边或填充路径区域来渲染图形。 通过以下常用函数来画图: beginPath()新建一条路径,生成之后,图形绘制命令被指向到路径上生成路径。 closePath()闭合路径之后图形绘制命令又重新指向到上下文中。 stroke()通过线条来绘制图形轮廓。 fill()通过填充路径的内容区域生成实心的图形。 moveTo(x,y)将笔触移动到指定的坐标x以及y上。 lineTo(x, y)绘制一条从当前位置到指定x以及y位置的直线。 arc(x, y, radius, startAngle, endAngle, anticlockwise)画一个以(x,y)为圆心的以radius为半径的圆弧(圆),从startAngle开始到endAngle结束,按照anticlockwise给定的方向(默认为顺时针)来生成。 arcTo(x1, y1, x2, y2, radius)根据给定的控制点和半径画一段圆弧,再以直线连接两个控制点。 注意:注意:arc()函数中的角度单位是弧度,不是度数。角度与弧度的js表达式:radians=(Math.PI/180)*degrees。 例子1:绘制一个三角形 function draw() { var canvas = document.getElementById('canvas'); if (canvas.getContext){ var ctx = canvas.getContext('2d'); ctx.beginPath();//新建路径 ctx.moveTo(75,50);//从75*20的位置开始 ctx.lineTo(100,75);//画到100*75 ctx.lineTo(100,25);//再画到100*25 ctx.fill();//填充颜色 }} |
最新内容
相关内容
Python的字典排序
Python的字典排序,代码,数据,培训,字典,函数,表达式,内容,列表,排列,问题,字典是Python语言中的一种数据结构,每一个字典元素是由一对key-valupython的调用绑定方法和非绑定方法
python的调用绑定方法和非绑定方法,代码,方法,实例,第一,培训,时计,奇数,偶数,参数,定义,在Python中,如果用实例去调用方法,这种限制就被称为Pypython为何会如此流行
python为何会如此流行,代码,时间,数字,发展,技术,分析,人工智能,世纪,培训,庞大,这其中有几个原因:1.它是古老的Python早在20世纪90年代就出现对数组使用Python For循环
对数组使用Python For循环,名称,培训,代码,健康,水牛,数组,元素,有用,下面,以上,您可以使用for循环从数组中获取特定元素。假设您有一组水牛bPython的经典题目
Python的经典题目,数字,数据,公司,培训,星期六,星期,字母,水仙花,次方,偶数,1、水仙花数用python打印出100-999所有的水仙花数,所谓水仙花数是python调试的几种方式
python调试的几种方式,代码,位置,信息,状态,培训,数据,分析,变量,函数,方式,python作为一种脚本语言,很多时候我们习惯于它的简洁,习惯于它的修为何你的Python代码应是扁平与稀疏
为何你的Python代码应是扁平与稀疏的,代码,培训,信息,观察,设计,工具,嵌套,闻闻,程序员,沉思,Python之禅之所以得名,正是由于它那简明扼要的规python的应用领域
python的应用领域,数据,分析,网络,工作,代码,人工智能,项目,金融,量化交易,业务,应用领域1:人工智能Python语言是目前公认学习人工智能的基础Python之关于高效使用字典的清单
Python之关于高效使用字典的清单,代码,数据,字典,培训,扩大,时报,方式,方法,对象,列表,字典(dict)对象是Python最常用的数据结构,社区曾有人开Python与c#的区别
Python与c#的区别,代码,平台,名称,培训,系统,设计,技术,标准,脚本,变量,现在来看下c#。它们的技术差异很大,但都适用于web开发。Python对c#的Python的英语搭配助手应用开发研究
Python的英语搭配助手应用开发研究,信息,设计,网站,在线,代码,环境,数据,分析,时间,培训,基于Python自带的GUI工具包Tkinter来实现窗口视窗设Python如何玩转加密?
Python如何玩转加密?,系统,中期,公共,世纪,适当,标准,管理,培训,基础,密钥,python中的一个有用的基本加密库就叫做cryptography。它既是一个