本人也是刚自学了一点canvas,由于js技术也烂得不行,但是还是写了个demo,提供给canvas初学者。

1.canvas是html5的新标签,与img类似, 默认只有两个属性, width, height,可以直接写在canvas标签内, eg:<canvas id="canvas" width="300px" height="300px"></canvas>

(注意)canvas默认宽度为300px,高度默认为150px;

2.canvas只是一个标签, 实际控制操作 还需要用到JS,如果对JS不是很熟悉也不是很重要, 因为canvas内置属性,方法已经够绘制基本图形了。

3.绘制图形,我们第一步需要获取到canvas这个标签,

  eg: var canvas = document.getElementById("canvas");

4.获取到这个标签之后,我们需要添加绘制图形的类型:

  eg: var ctx =  canvas.getContext("2d");

5.现在可以绘制基本的图形了, 比如 绘制一个矩形:

  eg: ctx.fillRect(100,100,100,100)   // 四个参数分别代表:离canvas左边的距离坐标, 离canvas顶部的距离左边,绘制矩形的宽度 ,绘制矩形的高度。(在离canvas左边100距离,上边100距离绘制一个宽高100的矩形);

6.canvas中提供了一个 beginPath()、closePath();分别表示 开始一个绘制范围,结束一个绘制范围,你可以在这个范围内绘制想要的图案;

  eg: ctx.beginPath();

    ctx.fillStyle = "red";  // 给填充图形加上颜色,默认为黑色;

    ctx.fillRect(100,100,100,100);

    ctx.strokeStyle = "red"; //给定绘制路径的颜色;

    ctx.moveTo( 200,200); // 给定一个起点;
    ctx.lineTo(300,300);  // 给定另一个点,因为我们知道线段是两个点确定的,

    ctx.stroke();  //stroke把起点和中点链接起来, 当然我们也可以设置多个lineTo 连接更多的点;

    ctx.closePath();

    

感觉实在编不下去了, 第一次写博客,如有朋友喜欢,我定会继续完善。

未完。。。。。

关于canvas的更多相关文章

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

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

  2. 【探索】利用 canvas 实现数据压缩

    前言 HTTP 支持 GZip 压缩,可节省不少传输资源.但遗憾的是,只有下载才有,上传并不支持.如果上传也能压缩,那就完美了.特别适合大量文本提交的场合,比如博客园,就是很好的例子. 虽然标准不支持 ...

  3. 简单入门canvas - 通过刮奖效果来学习

    一 .前言 一直在做PC端的前端开发,从互联网到行业软件.最近发现移动端已经成为前端必备技能了,真是不能停止学习.HTML5新增的一些东西,canvas是用的比较多也比较复杂的一个,简单的入门了一下, ...

  4. 获取Canvas当前坐标系矩阵

    前言 在我的另一篇博文 Canvas坐标系转换 中,我们知道了所有的平移缩放旋转操作都会影响到画布坐标系.那在我们对画布进行了一系列操作之后,怎么再知道当前矩阵数据状态呢. 具体代码 首先请看下面的一 ...

  5. Canvas坐标系转换

    默认坐标系与当前坐标系 canvas中的坐标是从左上角开始的,x轴沿着水平方向(按像素)向右延伸,y轴沿垂直方向向下延伸.左上角坐标为x=0,y=0的点称作原点.在默认坐标系中,每一个点的坐标都是直接 ...

  6. Canvas绘图之平移translate、旋转rotate、缩放scale

    画布操作介绍 画布绘图的环境通过translate(),scale(),rotate(), setTransform()和transform()来改变,它们会对画布的变换矩阵产生影响. 函数 方法 描 ...

  7. 用html5的canvas和JavaScript创建一个绘图程序

    本文将引导你使用canvas和JavaScript创建一个简单的绘图程序. 创建canvas元素 首先准备容器Canvas元素,接下来所有的事情都会在JavaScript里面. <canvas ...

  8. html5标签canvas函数drawImage使用方法

    html5中标签canvas,函数drawImage(): 使用drawImage()方法绘制图像.绘图环境提供了该方法的三个不同版本.参数传递三种形式: drawImage(image,x,y):在 ...

  9. 使用 JavaScript 和 canvas 做精确的像素碰撞检测

    原文地址:Pixel accurate collision detection with Javascript and Canvas 译者:nzbin 我正在开发一个需要再次使用碰撞检测的游戏.我通常 ...

  10. H5项目开发分享——用Canvas合成文字

    以前曾用Canvas合成.裁剪.图片等<用H5中的Canvas等技术制作海报>.这次用Canvas来画文字. 下图中"老王考到驾照后"这几个字是画在Canvas上的,与 ...

随机推荐

  1. spring boot(4)-html和templates

     静态页面 spring boot项目只有src目录,没有webapp目录,会将静态访问(html/图片等)映射到其自动配置的静态目录,如下 /static /public /resources ...

  2. INFORMATICA 开发规范

    目    录 Informatica开发规范.... 1 目    录.... 2 1        编写目的.... 4 2        ETL研发责任人界定.... 4 3        ETL ...

  3. 简说MVC Filter

    Filter与FilterProvider之间的关系 根据用途和执行时机的不同,MVC主要分为以下5种类型的过虑器:AuthenticationFilter.AuthorizationFilter.A ...

  4. Linux下调节CPU使用的几种方法

    一,使用taskset充分利用多核cpu,让cpu的使用率均衡到每个cpu上 #taskset-p,    设定一个已存在的pid,而不是重新开启一个新任务-c,    指定一个处理,可以指定多个,以 ...

  5. 如何理解springaop

    初看aop,上来就是一大堆术语,而且还有个拉风的名字,面向切面编程,都说是oop的一种有益补充等等,一下子让你不知所措,心想着:怪不得很多人都和我说aop多难多难.当我看进去以后,我才发现:它就是一些 ...

  6. Linux提权后获取敏感信息的方法与途径

    在本文开始之前,我想指出我不是专家.据我所知,在这个庞大的区域,没有一个“神奇”的答案.分享,共享(我的出发点).下面是一个混合的命令做同样的事情,在不同的地方,或只是一个不同的眼光来看待事物.我知道 ...

  7. Id vs Instancetype

    我写了一篇 Id vs Instancetype的文章,欢迎访问!

  8. IOS 了解新技术(UIPresentationController,屏幕适配)

    1.了解有什么新技术1> 苹果API文档 - General - Guides - iOSx API Diffs2> 观看WWDC会议视频 2.如何使用新技术 1> 自己根据API文 ...

  9. BZOJ 1588 营业额统计 set

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1588 题目大意: 营业额统计 Tiger最近被公司升任为营业部经理,他上任后接受公司交 ...

  10. iOS动画暂停和继续-本质是速度控制和时间坐标转换

    时间永不停止! 写一个CALayer的分类,控制动画的暂停与继续 extension CALayer { ///暂停动画 func pauseAnimation() { //取出当前时间,转成动画暂停 ...