美文网首页
使用canvas绘制线条、图片-12.16

使用canvas绘制线条、图片-12.16

作者: 50153465fcd8 | 来源:发表于2016-12-17 14:27 被阅读0次

绘制线条

1.绘制方法

  • 设置起点坐标值
    moveTo(x,y)

  • 设置终点(折点)坐标值
    lineTo(x,y)
    2.绘制线条属性

  • 设置线条宽度,默认1px
    context.lineWidth = 5;

  • 设置线条端点样式
    context.lineCap = "butt/round/square";
    butt - 平角
    round - 圆角
    square - 正方向

  • 设置折点的样式
    context.lineJoin = "miter/round/bevel";
    miter - 尖角
    round - 圆角
    bevel - 斜角

  • miterLimit

    • 配合miter使用
      context.lineJoin = "miter"
    • 该属性值设置尖角延伸范围
      context.miterLimit = 20;
      代码示例:
      <body>
      <canvas id="canvas" width="400px" height="400px"></canvas>
      </body>
      <script type="text/javascript">
      var context = document.getElementById("canvas").getContext("2d");
      context.beginPath();
      context.moveTo(20,20);
      context.lineTo(100,100);
      context.lineTo(30,10);
      context.lineWidth = 20;
      context.lineCap = "square";
      context.lineJoin = "miter";
      context.miterLimit = 20;
      context.strokeStyle = "red";
      context.stroke();
      </script>

绘制图片

1.绘制图片
drawImage(img,x,y)
img - 当前加载的图片
x和y - 图片左上角的位置
2.平铺图片
var ptn = createPattern(img,type)
img : 平铺的图片
type: 平铺的方式
repeat/no-repeat/repeaet-x/repeat-y
3.切割图片
clip()
代码示例
<body>
<canvas id="canvas" width="400px" height="400px"></canvas>
</body>
<script type="text/javascript">
var context = document.getElementById("canvas").getContext("2d");
var img = new Image();
img.src = "class.jpg";
img.onload = function(){ //必须要保证图片加载完毕(onload事件)后,再绘制图片
context.drawImage(img,10,10);//按照原图形大小加载
//var ptn = context.createPattern(img,"repeat-x"); //创建平铺对象
//context.fillStyle = ptn; //将平铺对象作为填充颜色
//context.fillRect(0,0,400,400); //绘制
}
context.beginPath();
//指定路径
context.arc(192/2,168/2,80,0,2*Math.PI);
//裁剪图片
context.clip();
</script>

画布方法

1.缩放
scale(x,y)
x,y,width,height都按照比例进行缩放
x和width: 按照第一个参数的比例缩放
y和height: 按照第二个比例缩放
2.改变参考点
translate(x,y)
context.translate(tx,ty);
context.fillRect(x,y,width,height);
tx和ty改变了矩形的x和y的参考点,也可以改变旋转的中心点
3.旋转
rotate(degrees * Math.PI/180)
degrees:代表想要旋转的角度
正数:顺时针
4.保存当前画布属性、状态
save()
5.恢复画布属性状态
resotre()

饼状图

      <script src="Chart.js"></script>
      var data = {//各种颜色对应的内容,也会改变鼠标放上去以后显示的内容
          labels: [ ],
          datasets: [//数据配置,对应的是一个数组,该数组里可以有多个对象,每个一个对象都是一个圆
                    {
                     data: [600, 50, 100],//每个分类所占的大小
                     backgroundColor: [ "red","black","white"],//每个分类的颜色
                     hoverBackgroundColor:[ ]//鼠标悬停以后该分类的颜色
                    }]
        };
      //创建图表对象,
      //参数1 :画布对象
      //参数2: 数据和配置信息
      var myPieChart = new Chart(context,{
           type:"pie",
           data:data
    });

相关文章

  • 使用canvas绘制线条、图片-12.16

    绘制线条 1.绘制方法 设置起点坐标值moveTo(x,y) 设置终点(折点)坐标值lineTo(x,y)2.绘制...

  • NFH.006 - Canvas高级与Chart.js

    12.16学习经验分享# Bruce_Zhu于2016.12.16 一、canvas-创建路径绘制线条(直线和折线...

  • 2017-04-25 canvas 学习笔记

    canvas 绘制线条 嵌入式不建议使用,会导致内部图片拉伸 绘制表格背景 绘制表格 绘制矩形 绘制画板 绘制弧线...

  • 无标题文章

    SVG svg和canvas的区别 svg绘制的是矢量图, canvas绘制的是位图 svg使用XML来绘制图片,...

  • 第十一周第三天笔记之canvas知识

    1 canvas知识 1.1 canvas基础知识 canvas绘制线,矩形,描边,填充,使用图片注意点:canv...

  • 使用Canvas动态生成分享图出现的问题总结

    Canvas画布上绘制图片出现问题 使用Canvas动态生成图片,未能成功展示在页面上 报错信息 调用canvas...

  • Canvas绘制线条

    1. canvas绘图上下文context 上下文:是所有的绘制操作api的入口或者集合。 Canvas自身无法绘...

  • Canvas

    1、 对象创建 & 获取 2 、绘制方法使用 利用Canvas类可绘画出很多内容,如图形、文字、线条等等;对应使用...

  • 小程序 海报

    创建canvas绘制图片的组件 - 代码如下 在页面中的使用

  • canvas:Uncaught SecurityError: F

    原因: canvas绘制图片,由于浏览器的安全考虑,如果在使用canvas绘图的过程中,使用到了外域的图片资源,那...

网友评论

      本文标题:使用canvas绘制线条、图片-12.16

      本文链接:https://www.haomeiwen.com/subject/stanmttx.html