前言
目前做的一个项目需要用到电子签名的功能,网上其实也挺多这种类型的电子签名,但是带有笔锋效果的确比较少,所以参考了一些博客,总结成了这个功能,在此分享给大家。
效果展示
代码展示
触摸开始(touchstart)
touchstart(e) {
if (!this.isInit) {
this.isInit = true
this.autographClick(1);
}
let startX = e.changedTouches[0].x
let startY = e.changedTouches[0].y
let startPoint = {
X: startX,
Y: startY
}
this.points.push(startPoint)
//每次触摸开始,开启新的路径
// console.log(this.points, "point11")
this.canvasCtx.beginPath()
}
获取最开始的坐标,x和y,然后将他们存起来,注意每次触摸后都应该调用 beginPath()
。
触摸移动(touchmove)
touchmove(e) {
let moveX = e.changedTouches[0].x
let moveY = e.changedTouches[0].y
let movePoint = {
X: moveX,