需求:用canvas画一个边框样式不一样的矩形

方法一:简单粗暴,直接用canvas填充矩形,给canvas标签设置样式即可。(推荐)

<!DOCTYPE html >
< html >
< head >
< title >canvas画边框不一样的长方形 </ title >
< style >
.canvas {
border-top: 5px solid #aaa;
border-right: 10px solid red;
border-bottom: 10px solid blue;
border-left: 20px solid black;
display: block;
margin: 50 auto;
}
< / style >
</ head >
< body >
< canvas id= "canvas" class= "canvas" width= "400" height= "300" ></ canvas >
< script >
var canvas = document. getElementById( "canvas");
var ctx = canvas. getContext( "2d");
ctx. fillStyle = 'pink';
ctx. fillRect( 0, 0, 400, 300);
< / script >
</ body >
</ html >

效果如下:

方法二:一条线一条线的画边框,再填充,此方法比较麻烦,且ctx.lineWidth较大时,有瑕疵

<!DOCTYPE html >
< html lang= "en" >
< head >
< meta charset= "UTF-8" >
< meta name= "viewport" content= "width=device-width, initial-scale=1.0" >
< meta http-equiv= "X-UA-Compatible" content= "ie=edge" >
< title >cancas画边框样式不一样的矩形 </ title >
</ head >
< body >
< canvas id= "canvas" width= "200" height= "200" ></ canvas >
< script >
var canvas = document. getElementById( 'canvas');
var ctx = canvas. getContext( '2d');
//左边框
ctx. beginPath();
ctx. moveTo( 10, 10);
ctx. lineTo( 10, 180);
ctx. closePath(); //闭合路径
ctx. lineWidth = 1; //线的边框为10像素
ctx. strokeStyle = 'blue';
ctx. stroke(); //绘制定义的图形
//下边框
ctx. beginPath();
ctx. moveTo( 10, 180);
ctx. lineTo( 180, 180);
ctx. closePath(); //闭合路径
ctx. lineWidth = 1; //线的边框为10像素
ctx. strokeStyle = 'green';
ctx. stroke(); //绘制定义的图形
//右边框
ctx. beginPath();
ctx. moveTo( 180, 180);
ctx. lineTo( 180, 10);
ctx. closePath(); //闭合路径
ctx. lineWidth = 1; //线的边框为10像素
ctx. strokeStyle = 'red';
ctx. stroke(); //绘制定义的图形
//上边框
ctx. beginPath();
ctx. moveTo( 180, 10);
ctx. lineTo( 10, 10);
ctx. closePath(); //闭合路径
ctx. lineWidth = 1; //线的边框为10像素
ctx. strokeStyle = 'black';
ctx. stroke(); //绘制定义的图形
ctx. rect( 10, 10, 170, 170);
ctx. fillStyle = "pink";
ctx. fill();
< / script >
</ body >
</ html >

效果如下:

canvas画边框不一样的矩形相关推荐

  1. canvas画圆、画带有圆角填充色的矩形

    canvas画海报圆形微信头像,包括紫色背景带有圆角的矩形方法 1.画圆 2.画填充色的带有圆角的矩形

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

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

  3. 用canvas画“哆啦A梦”时钟

    前言:今天看完了Js书的canvas画布那张,好开心~又是心爱的canvas~欧耶~ 之前看到有人建议我画蓝胖子,对哦,我怎么把童年最喜欢的蓝胖子忘了,为了表达我对蓝胖子的歉意,所以今天画了会动的he ...

  4. PHP画a梦,使用canvas画“哆啦A梦”时钟的代码

    这篇文章主要介绍了JavaScript学习小结之使用canvas画"哆啦A梦"时钟的相关资料,需要的朋友可以参考下 前言:今天看完了Js书的canvas画布那张,好开心~又是心爱的 ...

  5. canvas画流程图

    现有系统的流程图要重构,把之前的插件剔除. 找了很多画流程图的方式,但最后还是选择使用原生的canvas来画. 大概效果就是这样: 步骤: 最重要的就是数据源,数据源给好了,画起来就很方便了.下边是部 ...

  6. wpf 去除按钮点击时会画一个点线的矩形

    wpf 去除按钮点击时会画一个点线的矩形 最近在研究wpf,啥都不懂,特把自己查到的有用东西,收集一下: <Page xmlns="http://schemas.microsoft.c ...

  7. 新手用canvas画时钟

    学习canvas时,发现手机上的时钟图标显示是动态的,且跟真实时间一致,正好用来练手,最终效果图如下: 实现思路: 时钟分为表盘(背景矩形+圆盘+刻度)和表针(时分秒),整个实现的过程分为4步: 转换 ...

  8. H5 canvas 画圆 画圆角

    canvas是H5的一大重点 我们来学一下如何用canvas画圆 画圆 arc(x,y,r,起始弧度,结束弧度,顺逆时针) x,y就是这个圆的圆心坐标 r是圆的半径 弧度单位用Math.PI 顺逆时针 ...

  9. 【前端学习笔记—canvas标签和使用canvas画哆啦A梦案例】

    目录 canvas 1. canvas是H5新增标签 2.使用canvas画出矩形 (1)第一步,要新建画布 (2)第二步,要创建一支画笔 (3)第三步,用canvas画出矩形 3. 如何使用canv ...

最新文章

  1. java unsafe获取指针_【实战Java高并发程序设计 1】Java中的指针:Unsafe类
  2. loadRUnner常用函数
  3. BIM机器人来袭、你害怕了吗
  4. stm32 中bootloader、startup_stm32f10x_md.s的作用
  5. 控制用户输入字符的个数
  6. Android之Only fullscreen opaque activities can request orientation
  7. es dsl多条件组合查询(转)
  8. 当前用户安装anaconda,不需要sudo权限
  9. 版本代码详解:Alpha,Beta,Rc,GA,RTM,OEM等简称都代码什么意义
  10. Ubuntu下安装rknn-toolkit以及转换darknet-yolov3模型
  11. 麦肯锡:数字化转型四步法!
  12. Filezilla日文字符文件看不到或显示乱码的解决办法
  13. 签订保险合同后的事-续保、批单、退保、理赔
  14. 炫酷的后台管理系统UI界面
  15. APICloud框架——获取本地图片信息
  16. 基于java SSM框架的医院体检管理系统
  17. 排序算法之 插入排序、希尔(shell)排序 及其时间复杂度和空间复杂度
  18. 【渝粤题库】广东开放大学 电子商务技术导论 形成性考核 -
  19. php图床_PHP EasyImage 简单图床源码
  20. blender 贴图导入与连接 学习日志

热门文章

  1. activitythread.java,android主线程ActivityThread
  2. 一文快速实现微信公众号支付功能
  3. 计算机无法连接到本地网络连接,电脑本地连接禁用连接出错怎么办?
  4. 计算机去云大还是昆工,云南最好的7所大学,分3档!本地人青睐昆医大,外省更爱昆工!...
  5. 专接本c语言知识点总结 百度云下载,河北省专接本(微机原理与接口技术知识点总结)(完整版).pdf...
  6. 激活函数sigmoid、tanh、relu
  7. echarts字变大_echarts饼图字体大小修改
  8. 智能车竞赛技术报告 | 节能信标组 - 浙江大学 - 浙大三队
  9. Exchange Server 常见问题
  10. linux查看根目录下的目录结构,Linux根目录下的文件结构