1.画正方形

代码如下

<style>canvas {margin: 0 auto;border: 2px solid #aaa;display: block; /*画布居中*/}
</style>
<body><canvas id="cont" width="500px" height="500px">Hello Canvas</canvas><script>//获取画布var canvas = document.querySelector("#cont");//获取画布上下文var ctx = canvas.getContext('2d');/*//开启一条路径ctx.beginPath();//确定起始点ctx.moveTo(100, 100);//确定结束点ctx.lineTo(400, 100);//着色之前设置颜色和线宽ctx.strokeStyle = 'green';ctx.lineWidth = 5;//着色ctx.stroke();//结束路径ctx.closePath();*/
function drawLine(x1, y1, x2, y2, color, width) {ctx.beginPath();ctx.moveTo(x1, y1);ctx.lineTo(x2, y2);ctx.strokeStyle = color;ctx.lineWidth = width;ctx.stroke();ctx.closePath();
}
drawLine(100, 100, 400, 100, 'green', 5);
drawLine(400, 100, 400, 400, 'purple', 5);
drawLine(400, 400, 100, 400, 'orange', 5);
drawLine(100, 400, 100, 100, 'blue', 5);</script>
</body>
  • 直线封装:用函数将画线的代码封装起来
    结果如下

2.画三角形

代码如下

<style>canvas {margin: 0 auto;border: 2px solid #aaa;display: block; /*画布居中*/}
</style>
<body><canvas id="cont" width="500px" height="500px">Hello Canvas</canvas><script>var canvas = document.querySelector("#cont");//获取画布上下文var ctx = canvas.getContext('2d');ctx.beginPath();ctx.moveTo(100, 100);//此处直线连用,画完三条线再关闭路径ctx.lineTo(400, 100);ctx.lineTo(400, 400);ctx.lineTo(100, 100);ctx.strokeStyle = 'purple';ctx.lineWidth = 5;ctx.stroke();ctx.closePath();</script>
</body>

结果如下

3.画虚线

代码如下

<style>canvas {margin: 0 auto;border: 2px solid #aaa;display: block; /*画布居中*/}
</style>
<body><canvas id="cont" width="500px" height="500px">Hello Canvas</canvas><script>var canvas = document.querySelector("#cont");var ctx = canvas.getContext('2d');function drawLine(x1, y1, x2, y2, color, width) {ctx.beginPath();ctx.moveTo(x1, y1);ctx.lineTo(x2, y2);ctx.strokeStyle = color;ctx.lineWidth = width;ctx.stroke();ctx.closePath();}  //画直的虚线for (var i = 0; i < 30; i++) {drawLine(100+10*i, 100, 105+10*i, 100, 'purple', 2);}//画斜的虚线for (var i = 0; i < 30; i++) {drawLine(100+10*i, 100+10*i, 105+10*i, 105+10*i, 'green', 2)}</script>
</body>
  • 画虚线的原理就是画一条一条的短实线
    结果如下

canvas画正方形、三角形以及虚线相关推荐

  1. html5画直线箭头,HTML5 canvas画带箭头的虚线

    今天给大家讲解的是在HTML5 canvas画带箭头的虚线.关于Canvas 对象表示一个 HTML 画布元素 -.它没有自己的行为,但是定义了一个 API 支持脚本化客户端绘图操作. 本案例注意事项 ...

  2. html 绘制正方形,HTML5之Canvas画正方形

    HTML5之Canvas画正方形 1.设计源码 HTML5之Canvas画正方形 function drawFour(id) { //获取canvas元素 var canvas = document. ...

  3. HTML5 Canvas 画虚线组件

    前段时间由于项目需要,用到了HTML5 Canvas画图,但是没有画虚线的方法,自己写了一个HTML5 画虚线的组件. dashedLine.js 1 if (window.CanvasRenderi ...

  4. python画长方形的代码_python使用turtle画一个三角形、正方形(矩形或四边形)

    今天我们用python使用turtle库画一个三角形.一个正方形. 1.画一个三角形. 实现方法是先画一个直线,然后旋转120度,然后继续画直线.这样反复画三条直线后,就形成一个等边三角形.先看效果: ...

  5. vue3.0 + typescript openlayers实现地图标点、移动、画线、显示范围、测量长度、测量面积、画三角形、画正方形、画圆、线选、画笔、清除测量、清除、地图上展示弹窗等功能

    vue3.0 + typescript openlayers实现地图标点.移动.画线.显示范围.测量长度.测量面积.画三角形.画正方形.画圆.线选.画笔.清除测量.清除地图所有等功能 由于最近项目中用 ...

  6. python使用turtle画一个三角形、正方形(矩形或四边形)

    今天我们用python使用turtle库画一个三角形.一个正方形. 1.画一个三角形. 实现方法是先画一个直线,然后旋转120度,然后继续画直线.这样反复画三条直线后,就形成一个等边三角形.先看效果: ...

  7. python画正方形内切圆_python画出三角形外接圆和内切圆的方法

    刚看了<最强大脑>中英对决,其中难度最大的项目需要选手先脑补泰森多边形,再找出完全相同的两个泰森多边形.在惊呆且感叹自身头脑愚笨的同时,不免手痒想要借助电脑弄个图出来看看,闲来无事吹吹牛也 ...

  8. [html] 请使用canvas画一个渐变的长方形

    [html] 请使用canvas画一个渐变的长方形 // 普通canvas绘图工具类// umd适配多种引入方式 (function(root, factory) {if (typeof define ...

  9. python画正方形-用python画正方形

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我正在学习python学习教程,我无法打开屏幕进行绘图. 我没有发现错误,它只是 ...

最新文章

  1. java png 转jpg_怎么用java将png图片转换成jpg格式的图片
  2. js里面字符数字和数字相加_「译」5 个奇怪的只会在 JS 里才发生的趣事
  3. web上传图片的几种方法!
  4. 一个中年程序员遇到突发情况的一些胡言乱语
  5. java getselecteditem_java – 将getSelectedItem()从JComboBox转换为int或任何其他东西
  6. SpringMVC+Spring3+Hibernate4
  7. MP算法和OMP算法及其思想与实现
  8. 网络蜘蛛爬取邮箱地址
  9. canvas实现数字雨
  10. 粪斗吧 ! 骚年 !
  11. 使用jqery模拟网易严选购物车功能
  12. Qt QTouchEvent 多点触控
  13. PS一些简单的非主流照片效果
  14. python数据分析与应用pdf_看了Python在金融行业中的应用,大数据分析实在太重要了!...
  15. 【渝粤教育】电大中专Windows操作系统 (2)作业 题库
  16. 春季养生知识多 吃萝卜可预防上火
  17. 太实用了!Excel VBA常用代码!
  18. 【云原生之k8s】k8s基础详解
  19. 局域网匿名访问共享文件的设置方法?
  20. 人生有两种境界:一是痛而不言,二是笑而不语(zt)

热门文章

  1. c++ 高精度 加减乘除 四则运算 代码实现
  2. 电商干货!1000万烧出来的高点击率钻展创意图十大原则(营销人性)
  3. OSChina 周五乱弹 ——晒晒十大祖师爷级计算机写真
  4. 西汉 东汉 三国(曹魏 蜀汉 东吴)
  5. HDU-2952-Counting Sheep
  6. CrashReport
  7. 剧集分销模式不再吃香
  8. input表单元素required用法
  9. 十分钟学python-【译】10分钟学会Pandas
  10. java代码实现瑟夫环问题