1. 在canvas标签中给出长宽(不带单位):<canvas width="600" height="600"></canvas>

 或者在js中设置长宽:canvas.width = 600; canvas.height = 600;

 注意:canvas是行内块元素,用CSS设置的width和height像素值是canvas在页面渲染出来的宽高,而用js设置或者在标签中直接给出的则是canvas的分辨率,二者有本质的区别。
    canvas元素的使用与普通的html元素并不相同,它有一个默认尺寸300*150,在css中设置宽高只能改变canvas的显示宽高,而并没有改变画布绘制时的尺寸,所以要为canvas设置绘制的尺寸,必须写在元素标签上或用JS设置。

2. 浏览器兼容时,不会显示canvas标签内的内容;不兼容时才会显示。

  <canvas width="600" height="600">您的浏览器不支持canvas标签</canvas>

3. var canvas = document.getElementById("canvas"); // 获取canvas标签
    var context = canvas.getContext("2d"); // 获取2d上下文环境

    context.beginPath();//可以开始绘制

    context.moveTo(100,100); //画笔移动到(100,100);
    context.lineTo(150,200); //创建一条从(100,100)到(150,200)的路径
    context.fillStyle = "#ccc"; //填充颜色为#ccc
    context.strokeStyle = "#fff"; //进行描边
    context.lineWidth = 5;
    context.fill();//进行填充
    context.stroke();//进行描边

    context.closePath();//关闭当前路径 (基于状态)

    关于closePath():当当前路径不是封闭路径时,使用closePath会自动将当前路径的首尾连接起来

    context.fillRect(x,y,w,h);
    context.clearRect(50, 30, 110, 35); //清除画布上的内容

    (50,30)为矩形起点,110.35为矩形长宽

   想绘制多条不封闭路径图形,在每次绘制新路径时使用beginPath即可
4. 绘制弧线
 context.arc(x,y,r,startingAngle,endingAngle,anticlockwise = false);
   参数分别为:圆心坐标,半径,起始角度,结束角度,时钟方向(false为顺时针、true为逆时针)
        三点钟方向为0pi,六点钟方向为0.5pi,九点钟为1.0pi,12点钟为1.5pi
   例如:context.arc(300,300,100,0,Math.PI*1.5,false);

5. 绘制矩形

 context.fillRect(x,y,w,h);
   context.strokeRect(50, 30, 110, 35)
   context.clearRect(50, 30, 110, 35); //清除画布上的内容

6. 绘制虚线

 context.setLineDash([a,b]);//a为虚线线段长度,b为虚线线段间隔长度

7. 取得canvas元素相对于浏览器窗口的位置

 element.getBoundingClientRect()方法返回元素的大小及其相对于视口的位置

8. 绘制图片

 cvs.drawImage(image.x,y,width,height);
   context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height);

   image可以是元素或是image对象,但不能是路径
   传递给 drawImage() 方法的图像必须是 Image 对象或 Canvas 元素

canvas常用api的更多相关文章

  1. html5 canvas常用api总结(一)

    1.监听浏览器加载事件. window.addEventListener("load",eventWindowLoaded,false); load事件在html页面加载结束时发生 ...

  2. html5 canvas常用api总结(三)--图像变换API

    canvas的图像变换api,可以帮助我们更加方便的绘画出一些酷炫的效果,也可以用来制作动画.接下来将总结一下canvas的变换方法,文末有一个例子来更加深刻的了解和利用这几个api. 1.画布旋转a ...

  3. html5 canvas常用api总结(二)--绘图API

    canvas可以绘制出很多奇妙的样式和美丽的效果,通过几个简单的api就可以在画布上呈现出千变万化的效果,还可以制作网页游戏,接下来就总结一下和绘图有关的API. 绘画的时候canvas相当于画布,而 ...

  4. Selenium Web 自动化 - Selenium常用API

    Selenium Web 自动化 - Selenium常用API 2016-08-01 目录 1 对浏览器操作  1.1 用webdriver打开一个浏览器  1.2 最大化浏览器&关闭浏览器 ...

  5. canvas绘图API详解

    canvas绘图API详解 1.context的状态 矩阵变换属性 当前剪辑区域 context的其他状态属性: strokeStyle, fillStyle, globalAlpha, lineWi ...

  6. compass General 常用api学习[Sass和compass学习笔记]

    compass 中一些常用api 包括一些浏览器hack @import "compass/utilities/general" Clearfix Clearfix 是用来清除浮动 ...

  7. java基础3.0:Java常用API

    本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...

  8. C++ 中超类化和子类化常用API

    在windows平台上,使用C++实现子类化和超类化常用的API并不多,由于这些API函数的详解和使用方法,网上一大把.本文仅作为笔记,简单的记录一下. 子类化:SetWindowLong,GetWi ...

  9. node.js整理 02文件操作-常用API

    NodeJS不仅能做网络编程,而且能够操作文件. 拷贝 小文件拷贝 var fs = require('fs'); function copy(src, dst) { fs.writeFileSync ...

随机推荐

  1. 在Android studio模拟器中运行apk文件

    菜鸟级玩家比看文. win平台下下载的apk文件,怎么能模拟运行出来. 首先得安装Android SDK,不会的自行百度一下. 接下来,打开AVD模拟器,自己创建一个模拟器(过程自己实践) 然后,将你 ...

  2. PHP pathinfo() 函数

    PHP pathinfo() 函数 完整的 PHP Filesystem 参考手册 定义和用法 pathinfo() 函数以数组或字符串的形式返回关于文件路径的信息. 返回的数组元素如下: [dirn ...

  3. ip001

    ----------- <?phpheader('Content-type:text/html;charset=utf8');// <script type="text/java ...

  4. OpenCV3.4两种立体匹配算法效果对比

    以OpenCV自带的Aloe图像对为例:     1.BM算法(Block Matching) 参数设置如下: ) + ) & -; cv::Ptr<cv::StereoBM> b ...

  5. 【开发技术】 Air display的介绍与使用

    原理是,通过ipad与电脑连接的同一网络,然后把你的ipad变成电脑的屏幕 安装方法:1, 2, 3,

  6. Vue.js学习网址

    Vue官网:http://cn.vuejs.org/v2/guide/index.html 淘宝镜像:http://npm.taobao.org/ Vue-router:https://router. ...

  7. Number()和new Number()的区别以及一种简单实现

    看MDN Beginners文档的时候注意到了这种用法 var n1 = Number(123); , 冒出的第一个疑问就是和 var n2 = new Number(123); 有什么区别呢? 首先 ...

  8. Effective Java 第三版——28. 列表优于数组

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  9. RocketMQ-quickstart(批量消费问题)

    基本概念: Producer:消息生产者,负责生产消息,一般由业务系统负责生产消息. Consumer:消息消费者,负责消费消息,一般是后台系统负责异步消费. Push Consumer:Consum ...

  10. 转-WebService到底是什么?

    原文链接:WebService到底是什么? 一.序言 大家或多或少都听过WebService(Web服务),有一段时间很多计算机期刊.书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多 ...