使用canvas的方法绘制矩形圆形 - Kaiqisan

使用canvas的方法绘制矩形圆形

就是直接使用canvas方法绘制图形,可以免去自己一条一条绘制线段的麻烦。
——————————————————————————————————————————

绘制矩形

关键代码

rect(x, y, len, hei): 完成一个矩形的绘制,四个参数分别为:矩形左上角的x坐标,矩形左上角的y坐标,矩形的宽度(从x到x+len),矩形的高度(从y到y+hei) ,可以配合ctx.stroke():实现一个矩形的绘制。

ctx.strokeRect(x, y, len, hei): 是上面的rect方法和stroke方法的整合,在绘制完成之后再描边处理,它属于填充方法stroke,所以要使用strokeStyle方法修改描边样式。

fillRect(x, y, len, hei): 完成一个矩形的绘制之后再进行填充(不负责描边),它属于填充方法fill,所以要使用fillStyle方法修改填充样式。

clearRect(x, y, len, hei): 完成矩形空间的内容清除,在清除之后,该区域变成透明区域(rgba(0, 0, 0, 0)),一般用于在更新画布内容的时候的画布刷新清屏。

参考源码

let canvas = document.getElementById('demo')
let ctx = canvas.getContext('2d')

// 画一个矩形
ctx.rect(100, 100, 50, 50)
ctx.strokeStyle = '#000000'
ctx.stroke()
// 描边矩形
ctx.beginPath()
ctx.strokeRect(200, 200, 50, 80)
// 填充矩形
ctx.beginPath()
ctx.fillRect(300, 300, 100, 100)
// 清除矩形(类似于画图板的橡皮擦)
ctx.beginPath()
ctx.clearRect(320, 320, 30, 30)

画出的图片如下:

rectIMG
把画布图片保存到本地时看到的图片
rectLocal
黑色矩形中间被扣掉的一块就是使用clearRect方法产生的
————————————————————————————————————————

绘制圆形和弧形

关键代码
arc(x,y,r,sAngle,eAngle,counterclockwise): 前六个参数都是绘制圆弧的必备的,它们分别是: 圆心x坐标 圆心y坐标 圆半径 起始角 结束角 是否顺时针绘制(默认顺时针)(第四第五个参数的角度以平面直角坐标系的为基准)

参考源码

ctx.arc(400, 300, 200, 0, 270 / 180 * Math.PI, false) // 注意:这里的角度是都采用弧度制
ctx.stroke()

绘制效果是这样的
arc-4/3
利用圆弧,我们也可以很快速地绘制出一个扇形

let canvas = document.getElementById('demo')
let ctx = canvas.getContext('2d')
ctx.moveTo(400, 300)
ctx.arc(400, 300, 200, 0, 3 * Math.PI / 2, false)
ctx.closePath() // 合并路径
ctx.stroke()

绘制效果

arc-line
以上就是canvas的简单的图形绘制。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kaiqisan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值