canvas学习api
1、canvas.getContext():获取渲染上下文和绘画功能;
一、绘制矩形
2、ctx.fillRect(x,y,width,height):绘制矩形;
3、ctx.strokeRect(x,y,width,height):绘制矩形边框;
4、ctx.clearRect(x,y,width,height):清除矩形;
二、绘制路径
5、ctx.beginPath():新建路径开始命令;
6、ctx.closePath():路径闭合之后绘制命令重新回到上下文;
7、stroke():通过线条来绘制图形轮廓;
8、fill():填充路径内容途径生成实心图形;
三、移动笔触
moveTo(x,y);
四、实线
lineTo(x,y):绘制一条从当前位置到x,y位置的实线;
五、圆弧
arc(x,y,radius,startAngle,endAngle,方向(默认顺时针));
六、贝塞尔以及二次贝塞尔
quadraticCurveTo(cp1x,cp1y,x,y):cp1x,cp1y是贝塞尔曲线的控制点,x,y是结束点;
二次贝塞尔: bezierCruveTo(cp1x,cp1y,cp2x,cp2y,x,y)多了两个控制点;
七、Path2D(不太详细)
八、颜色填充
fillStyle = color:设置图形的填充颜色;
strokeStyle = color:设置图形轮廓的颜色;
九、设置透明度
ctx.globalAlpha = (0~1);
十、线型 line styles
1、lineWidth = width;设置线的宽度(注意:线的宽度是从宽度中心向两边各绘制宽度的一般,因此要准确落在边缘需要减半计算);
2、 lineCap = type:设置线条末端样式,type有 butt,round,square,默认是butt,
3、 lineJoin,设置线条交接处样式,值 有round,bevel,miter;默认是miter;
4.miterLimit,设置外延交点和连接点的最大距离,超出最大距离则变成bevel;
5、setLineDash和setLineOffset设置虚线样式;
十一、渐变 Gradients
1、线性渐变 createLinearGradient(x1,y1,x2,y2),参数规定起始位置和结束位置,即线性方向;
2、径向渐变 createRadialGradient(x1,y1,r1,x2,y2,r2);
3、颜色值设定 addColorStop(position,color);position是渐变位置(0~1),color是颜色;
注:gradient对象其实也是一种颜色,要用fillStyle引用;
十二、状态保存与恢复
save()和restore();
十三、移动原点
translate(x)
canvas学习api的更多相关文章
- canvas学习之API整理笔记(二)
前面我整理过一篇文章canvas学习之API整理笔记(一),从这篇文章我们已经可以基本了解到常用绘图的API.简单的变换和动画.而本篇文章的主要内容包括高级动画.像素操作.性能优化等知识点,讲解每个知 ...
- canvas学习之API整理笔记(一)
其实canvas本身很简单,就是去学习它的API,多看实例,多自己动手练习,多总结.但是canvas的API实在是有点多,对于初学者来说,可能学到一半就止步不前了.我也有这种感觉,在学习的过程中,编写 ...
- Html5 学习系列(五)Canvas绘图API快速入门(1)
引言:Canvas绘图API快速入门 在接触HTML5的初学者包括我都在很多地方见到非常炫的一些页面,甚至好多学习HTML5的开发者都是冲着Web端的页游去的,那么HTML5那么绚丽的页面效果以及游戏 ...
- Canvas学习:封装Canvas绘制基本图形API
Canvas学习:封装Canvas绘制基本图形API Canvas Canvas学习 从前面的文章中我们了解到,通过Canvas中的CanvasRenderingContext2D对象中的属性和方 ...
- Html5 学习系列(五)Canvas绘图API快速入门(2)
Canvas绘图API Demos 上一篇文章中,笔者已经给大家演示了怎么快速用Canvas的API绘制一个矩形出来.接下里我会在本文中给各位介绍Canvas的其他API:绘制线条.绘制椭圆.绘制图片 ...
- canvas学习(一)
Canvas 学习之路 (一) canvas 是H5 里面神一样的东西,使得只是通过html和js就能做出非常棒的游戏和画面. 因为对前端无限的爱好,更加对canvas充满好奇,将我学习canvas的 ...
- 引言:Canvas绘图API快速入门
引言:Canvas绘图API快速入门 在接触HTML5的初学者包括我都在很多地方见到非常炫的一些页面,甚至好多学习HTML5的开发者都是冲着Web端的页游去的,那么HTML5那么绚丽的页面效果以及游戏 ...
- canvas学习总结六:绘制矩形
在第三章中(canvas学习总结三:绘制路径-线段)我们提高Canvas绘图环境中有些属于立即绘制图形方法,有些绘图方法是基于路径的. 立即绘制图形方法仅有两个strokeRect(),fillRec ...
- canvas学习和滤镜实现
最近学习了 HTML5 中的重头戏--canvas.利用 canvas,前端人员可以很轻松地.进行图像处理.其 API 繁多,这次主要学习常用的 API,并且完成以下两个代码: 实现去色滤镜 实现负色 ...
随机推荐
- redis在spring-boot中的应用
Redis(REmote DIctionary Server) 是一个由Salvatore Sanfilippo写的key-value存储系统.Redis是一个开源的使用ANSI C语言编写.遵守BS ...
- 自学python笔记(二)
一:在Python的交互式命令行写程序,好处是一下就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍.所以,实际开发的时候,我们总是使用一个文本编辑器来写代码,写完了,保存为一个文件,这样 ...
- 迷宫问题-POJ 3984
迷宫问题 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 24348 Accepted: 14206 Descriptio ...
- (12.05)Java小知识!
今天与大家分享关于抽象类的知识点. 抽象类: 抽象类应用场景:在某种情况下,某个父类只是知道子类应该包含怎样的方法,但无法准确的知道这些子类如何实现这些方法. 从多一个具有相同特征的类中抽象出一个抽 ...
- python3中的编码与解码(超好理解)
编码和解码是针对数据而言的,数据能干什么呢?无非就是用来显示,储存和传输的: 储存和传输数据当然是希望数据越小越好,所以发明了utf-8这种数据编码显示:它智能将英文用一个字节表示,欧洲的字符用两个字 ...
- mysql主从复制笔记
一:测试环境介绍 主从复制测试环境是ubuntu+mysql5.7,master服务器ip是192.168.71.135,slave服务器ip是192.168.71.137,ubuntu环境是从一台已 ...
- JavaScript 性能优化技巧分享
JavaScript 作为当前最为常见的直译式脚本语言,已经广泛应用于 Web 应用开发中.为了提高Web应用的性能,从 JavaScript 的性能优化方向入手,会是一个很好的选择. 本文从加载.上 ...
- 基于Node的高性能MVC框架
赶上公司去Windows化,有一大波.net站点需要转成Node.js,于是自己就顺便琢磨一个通用的Node版MVC框架. 经过几天的努力,beta版终于面世了!因为其高性能的特点,特地命名node- ...
- [设计模式]PHP设计模式之单例模式
面试最常见的问题之一就是 请问您知道哪些设计模式这次先介绍最经典的单例模式.单例模式分3种:懒汉式单例.饿汉式单例.登记式单例.单例模式有以下3个特点:1.只能有一个实例.2.必须自行创建这个实例. ...
- oracle概念
.DDL 数据定义语言 create alter drop truncate .DML 数据操作语言 insert delete update select .TCL 事务控制语言 commit ro ...