• canvas设置线条样式


    canvas设置线条样式

    1. 合法属性和方法

      lineWidth = value           设置线宽
      lineCap = type              设置线端点样式
      lineJoin = type             设置线交合处样式
      setLineDash(segments)       设置虚线
      lineDashOffset = value      设置虚线偏移
      
    2. 设置线宽

      const canvas = document.getElementById('canvas');
      const ctx = canvas.getContext('2d');
      
      ctx.lineWidth=1;
      ctx.beginPath();
      ctx.moveTo(50, 50);
      ctx.lineTo(100, 50);
      ctx.stroke();
      
      ctx.lineWidth=2;
      ctx.beginPath();
      ctx.moveTo(50, 60);
      ctx.lineTo(100, 60);
      ctx.stroke();
      
      ctx.lineWidth=3;
      ctx.beginPath();
      ctx.moveTo(50, 70);
      ctx.lineTo(100, 70);
      ctx.stroke();
      
      ctx.lineWidth=4;
      ctx.beginPath();
      ctx.moveTo(50, 80);
      ctx.lineTo(100, 80);
      ctx.stroke();
      
      ctx.lineWidth=5;
      ctx.beginPath();
      ctx.moveTo(50, 90);
      ctx.lineTo(100, 90);
      ctx.stroke();
      
    3. 设置线端点

      ctx.beginPath();
      ctx.lineCap="round";
      ctx.lineWidth=10;
      ctx.moveTo(50, 80);
      ctx.lineTo(100, 80);
      ctx.stroke();
      
      ctx.beginPath();
      ctx.lineCap="butt";
      ctx.lineWidth=10;
      ctx.moveTo(50, 100);
      ctx.lineTo(100, 100);
      ctx.stroke();
      
      ctx.beginPath();
      ctx.lineCap="square";
      ctx.lineWidth=10;
      ctx.moveTo(50, 120);
      ctx.lineTo(100, 120);
      ctx.stroke();
      
    4. 设置线交合

      ctx.beginPath();
      ctx.lineWidth=20;
      ctx.lineJoin="round";
      ctx.moveTo(50, 80);
      ctx.lineTo(150, 120);
      ctx.lineTo(250, 80);
      ctx.stroke();
      
      ctx.beginPath();
      ctx.lineWidth=20;
      ctx.lineJoin="bevel";
      ctx.moveTo(50, 150);
      ctx.lineTo(150, 190);
      ctx.lineTo(250, 150);
      ctx.stroke();
      
      ctx.beginPath();
      ctx.lineWidth=20;
      ctx.lineJoin="miter";
      ctx.moveTo(50, 220);
      ctx.lineTo(150, 260);
      ctx.lineTo(250, 220);
      ctx.stroke();
      
    5. 设置虚线

      var offset = 0;
      
      setInterval(() => {
          offset++;
          if (offset > 16) {
              offset = 0;
          }
      
          ctx.clearRect(0, 0, canvas.width, canvas.height);
          ctx.setLineDash([4, 2]);
          ctx.lineDashOffset = -offset;
          ctx.strokeRect(10, 10, 100, 100);
      
      }, 20)
      
  • 相关阅读:
    树链剖分学习笔记
    [bzoj4445] [SCOI2015]小凸想跑步 (半平面交)
    上下界网络流学习笔记
    LocalMaxima_NOI导刊2009提高(1)(欧拉-马斯刻若尼常数)
    公告
    构造函数
    矩阵线段树
    [SCOI2005]互不侵犯
    牛客网NOIP赛前集训营-提高组(第四场)B区间
    noip提高组模拟赛(QBXT)T2
  • 原文地址:https://www.cnblogs.com/ye-hcj/p/10357405.html
Copyright © 2020-2023  润新知