canvas介绍和用途

canvas(画布)主要是位图  svg(矢量图)

canvas标签,必须要写的3个属性 id  width  height  

  为什么不在style中设置width和height呢?

    因为这设置width和height话会有位移差;

    位移差:在画布里面的元素有偏差;

  js中每次使用canvas,都要设置一个绘图环境,然后会得到一个对象,然后对其进行操作;

  var c=document.getElementById("") canvas标签的id值;

  var d=c.getContext("2d")  设置绘图属性;

  然后得到d这个对象,就可以对其进行操作元素里面的属性和方法;

  方法和属性(带()的是方法,不带的是属性):

    fillRect():绘制一个填充方块,默认颜色是黑色; 参数:x,y,w,h    (坐标和宽高)

    fillStyle:填充颜色  属性值:想要的颜色;

    strokeRect():绘制边框的方框; (如果绘制边框的话,会有2px的偏差,所以设置坐标的话需要在原有的基础上加上0.5),参数同fillRect()

    lineWidth:边框粗细;

    strokeStyle:线条颜色;

    lineJoin:边框圆角 属性值:round 圆,  

    lineCap:线条圆角;

    绘制线条

      moveTo():绘制线段的起点  参数  x,y   坐标位置;

      lineTo():绘制线段的领点  参数 x,y  坐标位置 ;  (最后一个lineTo就代表终点)

      线条只能有一个moveTo(),但却可以有很多lineTo()

    stroke()  绘制线段;

    beginPath  开始路径  必须要写对应的关闭路径  

    closePath  关闭路径

    两者同时出现,将绘制路径闭合,起始点和结尾点,首尾相连;

    rect()  绘制方块,及不带填充色和线框;

    fill()  填充颜色;

    clearRect(x,y,width,height)  清除矩形区域

    save()  restore()  这两个方法成对出现,中间的属性样式,之影响内部,不影响外部;

  画圆:

    arc():参数(x,y,半径,开始弧度,结束弧度,时针方向);

    x,y坐标  半径,圆的大小,  开始弧度,一般都是0,结束弧度,一般都是 (0-360)*Math.PI/180,  时针方向,true 逆时针,false 顺时针  

    translate() 平移,画布大小位置不变,起始坐标变了   参数 x,y 

  旋转:rotate()  同translate原理;

  需注意一点,需要先通过  translate()  确定起始坐标点,在来操作rotate会比较好

  缩放:scale(0.5,0.5)  画布缩放,就是将画布向后移动,跟人的视距就远了,近大远小;

  画布中插入图片;drawImage()

    var img=new Image()  

    img.src="图片路径"  

    img.onload=function(){

      d.drawImage(img,x,y,w,h)    d就是画布对象,img图片对象,坐标宽高,drawImage()在画布中插入图片

    }    

  插入文字:

    strokeText()  插入的文字带边框  参数:   "输入的内容" , x , y  (坐标)

    fillText()    不带边框    参数同strokeText()

     textAlign:相对字体的起始点,水平居中

    textBaseline:移到字体的起始点,垂直居中

    font:字体大小和字形

canvas介绍和用途的更多相关文章

  1. Wpf 之Canvas介绍

    从这篇文章开始是对WPF中的界面如何布局做一个较简单的介绍,大家都知道:UI是做好一个软件很重要的因素,如果没有一个漂亮的UI,功能做的再好也无法吸引很多用户使用,而且没有漂亮的界面,那么普通用户会感 ...

  2. Android绘图基础Paint和Canvas介绍-android学习之旅(六十一)

    canvas介绍 Paint类介绍 代码示例 效果图

  3. XML【介绍、用途、了解XML技术架构、语法】

    什么是XML? XML:extensiable markup language 被称作可扩展标记语言 XML简单的历史介绍: gml->sgml->html->xml gml(通用标 ...

  4. HTML5中canvas介绍

    1.什么是Canvas canvas 是 HTML5 提供的一个用于展示绘图效果的标签 canvas 提供了一个空白的图形区域,可以使用特定的JavaScript API来绘画图形(canvas 2D ...

  5. JAR包介绍大全用途作用详解JAVA

    jta.jar 标准JTA API必要commons-collections.jar 集合类 必要antlr.jar  ANother Tool for Language Recognition 必要 ...

  6. Html5 Canvas介绍

    1. 获取绘图上下文 var mycanvas = document.getElementById('mycanvas'); var context = mycanvas.getContext('2d ...

  7. python匿名函数的介绍及用途

    匿名函数 用lambda能够创建一个匿名函数,这中函数得名于省略了用def声明函数的标准步骤. 语法 lambda [arg1 [,arg2,.....argn]]:expression 如何使用 我 ...

  8. canvas介绍(画布)

    canvas(画布)主要是位图 svg(矢量图) canvas标签,必须要写的3个属性 id width height 为什么不再style中设置width和height呢? 因为这设置width和h ...

  9. WPF入门教程系列六——布局介绍与Canvas(一)

    从这篇文章开始是对WPF中的界面如何布局做一个较简单的介绍,大家都知道:UI是做好一个软件很重要的因素,如果没有一个漂亮的UI,功能做的再好也无法吸引很多用户使用,而且没有漂亮的界面,那么普通用户会感 ...

随机推荐

  1. zimbra启用SMTP认证

    zmprov modifyServer {{ you domain }} zimbraMtaTlsAuthOnly FALSE zmcontrol restart 查看对应配置 zmprov getS ...

  2. 【yumex图形安装双击】【转载】CentOS yum的详细使用方法

    CentOS yum的详细使用方法 yum是什么yum = Yellow dog Updater, Modified主要功能是更方便的添加/删除/更新RPM包.它能自动解决包的倚赖性问题.它能便于管理 ...

  3. Linux_磁盘管理理论概述

    一.磁盘阵列 1.什么是磁盘阵列? 1️⃣:磁盘整列就是将多块独立的磁盘组合到一起,形成容量大的磁盘组. 2️⃣:将相同的数据存放到不多个的磁盘的不同位置 2.RAID0 1️⃣:RAID0是磁盘整列 ...

  4. IEEE754标准

    以下计算按规格化规定: S:符号位 M:分数值 E:指数偏移值 单精度浮点数(32bit): NUM_single = (-1)^S *  1.M   *   2^(E-127) 双精度浮点数(64b ...

  5. vimdiff env.txt export.txt set.txt

    1. 环境变量 简单理解了变量的概念,就很容易理解环境变量了.环境变量的作用域比自定义变量的要大,如 Shell 的环境变量作用于自身和它的子进程.在所有的 UNIX 和类 UNIX 系统中,每个进程 ...

  6. 一、apt的简介

    一.apt的简介 apt的全称是Advanced Packaging Tool是Linux系统下的一款安装包管理工具. 最初需要在Linux系统中安装软件,需要自行编译各类软件,缺乏一个统一管理软件包 ...

  7. ELK学习实验020:ELK使用kafka缓存

    首先安装一个kafka集群,但是zookeeper使用单节点,可以让kafka快速跑起来,后续再研究kafka和zokkeeper的集群 1 安装Kafka集群 下面是三个节点都要做 [root@no ...

  8. Java 中 volatile 关键字及其作用

    引言 作为 Java 初学者,几乎从未使用过 volatile 关键字.但是,在面试过程中,volatile 关键字以及其作用还是经常被面试官问及.这里给各位童靴讲解一下 volatile 关键字的作 ...

  9. docker命令补全

    安装docker自带包: source /usr/share/bash-completion/completions/docker 缺少下面的包,TAB会报错 yum install -y bash- ...

  10. 技术干货 | 源码解析 Github 上 14.1k Star 的 RocketMQ

    前言 Apache RocketMQ 作为广为人知的开源消息中间件,诞生于阿里巴巴,于 2016 年捐赠给了 Apache.从 RocketMQ 4.0 到如今最新的 v4.7.1,不论是在阿里巴巴内 ...