使用clip方法处理
参考下面的代码

const ctx = canvas.getContext('2d)
ctx.save() // 保存原始绘图区域
ctx.beginPath() // 开始绘制路径
ctx.rect(0, 0, width, height) // 使用矩形区域
ctx.clip() // 完成绘图区域限制
ctx.drawImage(image, 0, 0, width, height) // 在限制区域内绘制图片
ctx.restore() // 恢复原始绘图区域

看个效果