Canvas1 (关键词:canvas)
 
  • canvas :就是html5中提供的一个标签,只是用来展示绘图的内容
    • canvas  标签的默认宽高:300*150
      • 如果给canvas来设置高度和宽度
        • 一般情况就是html的width 和 height属性
        • 通过js来设置宽度和高度
        • 不管是通过html的属性(width/height) 还是直接通过DOM来设置(width/height ),属性都是在设置canvas画布中的像素点
        • 注意:不要通过css样式属性来设置高度和宽度,因为这里的高度和宽度不是在设置像素点的个数,而是在扩大或者缩小每个像素点的大小
 
    • canvas标签IE9及其以上的浏览器才支持
 
    • 使用canvas基本步骤:
      1. 获取canvasDOM元素
      2. 获取canvas绘图上下文(一系列工具的集合)
      3. 从上下文中获取到相应的工具(API 或者方法)
 // 传入的参数 2d 表示,绘制平面图形
// 如果想要绘制 3d的内容,需要传入: webgl
var ctx = cv.getContext("2d");
// ctx的类型: CanvasRenderingContext2D
 
    • 系统的画图工具:
      1. canvas画布:白色的空白区域
      2. 上下文:白色的空白区域上部工具栏
 
    • 常用的方法:
      1. .moveTo()----把画笔移动到画布中的某个位置去
      2. .lineTo()   ----在起始点和当前函数提供的坐标之间画一条路径
      3. .stroke()   ----描边,真正的将路径绘制在canvas画布上
      4. .fill()         ---- 填充,填充为一个指定的颜色,如果绘制了一个没有闭合图形,会自动闭合
      5. .closePath() ---闭合路径
        • 闭合路径 与 自己写的连线的区别:
          • 闭合路径绘制的两条线衔接处更加平滑
          • 自己写的连线,只是让开始位置跟结束的位置放到一起,这两者绘制出来的接合处是有区别的
      6. .beginPath()----开启路径
        • 开启路径,只把原来的路径清空了,但是绘制的样式(状态)还会被继承了
        • 如果是开启新路径之后,又设置了样式,那么会把之前的样式覆盖
 
      • 常用的样式:
        1. strokeStyle   设置描边的颜色
                    取值:颜色名称   十六进制  rgba
        2. fillStyle   设置填充的颜色
        3. lineWidth 设置线的宽度 :如果是奇数的线宽,绘制的时候,会制动加1像素,然后最外面的两个像素颜色会变淡
      • 如何让lineWidth的宽度为1
        • (width,height.5)

canvas ---1的更多相关文章

  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. treeview递归

    1.数据库 table A( ID int pk, Value varchar, Fid int ) A: ID   Value    Fid 1   value1     0 2   value2  ...

  2. PHPの页面跳转-常见方法

    PHP页面跳转一.header()函数 header()函数是PHP中进行页面跳转的一种十分简单的方法.header()函数的主要功能是将HTTP协议标头(header)输出到浏览器. header( ...

  3. PreparedStatement可以有效地防止sql被注入

    import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import jav ...

  4. ASP超级网店V2.5一注入漏洞

    Title:ASP超级网店V2.5一注入漏洞  --2011-10-30 17:59 ASP超级网店V2.5 这个系统,有很多地方可以注入 http://www.xxxxxx.com/admin/pi ...

  5. 涂抹Oracle—Flashback

    11.1  基于flashback查询过去的数据 a.基于时间的查询(as of timestamp) 构造表falsh_tbl,删除数据然后查询 SQL>select * from flash ...

  6. Android 给TextView添加点击事件

    首先设定TextView的clickable属性为true. 可以在布局文件中进行设定,比如: <TextView android:id="@+id/phone" andro ...

  7. 在SQL Server中使用命令调用SSIS包

    在SQL Server中可以使用dtexec命令运行SSIS包(2005以上版本),当然也可以通过系统过程:xp_cmdshell调用dtexec运行SSIS包. 具体操作步骤如下: 1.首先,当然是 ...

  8. typedef与define的区别

    1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错.例如:#define PI 3.1415 ...

  9. 关于本学期西南交通大学ACM-ICPC校集训队 训练计划(Beta 1.0)

    在第十周新秀杯之后,从第十一周起的训练计划如下: 1.十一周的周一至周五进行ACM校集训队申请.申请方式从2014年11月17日0:00开始,发送申请者的姓名.学号.专业.电话.QQ以及大学(针对大一 ...

  10. tomcat+redis实现session共享缓存

    一:linux下redis安装 1.wget http://download.redis.io/releases/redis-3.2.4.tar.gz 2.tar xzf redis-3.2.4.ta ...