123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- // pages/mine/mine.js
- var content = null;
- var touchs = [];
- var canvasw = 0;
- var canvash = 0;
- //获取系统信息
- wx.getSystemInfo({
- success: function (res) {
- canvasw = res.windowWidth;
- canvash = canvasw * 9 / 16;
- },
- }),
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- signImage: '',
- },
- // 画布的触摸移动开始手势响应
- start: function (event) {
- // console.log("触摸开始" + event.changedTouches[0].x)
- // console.log("触摸开始" + event.changedTouches[0].y)
- //获取触摸开始的 x,y
- let point = { x: event.changedTouches[0].x, y: event.changedTouches[0].y }
- touchs.push(point)
- },
- // 画布的触摸移动手势响应
- move: function (e) {
- let point = { x: e.touches[0].x, y: e.touches[0].y }
- touchs.push(point)
- if (touchs.length >= 2) {
- this.draw(touchs)
- }
- },
- // 画布的触摸移动结束手势响应
- end: function (e) {
- console.log("触摸结束" + e)
- //清空轨迹数组
- for (let i = 0; i < touchs.length; i++) {
- touchs.pop()
- }
- },
- // 画布的触摸取消响应
- cancel: function (e) {
- console.log("触摸取消" + e)
- },
- // 画布的长按手势响应
- tap: function (e) {
- console.log("长按手势" + e)
- },
- error: function (e) {
- console.log("画布触摸错误" + e)
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- //获得Canvas的上下文
- content = wx.createCanvasContext('firstCanvas')
- //设置线的颜色
- content.setStrokeStyle("#00ff00")
- //设置线的宽度
- content.setLineWidth(5)
- //设置线两端端点样式更加圆润
- content.setLineCap('round')
- //设置两条线连接处更加圆润
- content.setLineJoin('round')
- },
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady: function () {
- },
- //绘制
- draw: function (touchs) {
- let point1 = touchs[0]
- let point2 = touchs[1]
- touchs.shift()
- content.moveTo(point1.x, point1.y)
- content.lineTo(point2.x, point2.y)
- content.stroke()
- content.draw(true)
- },
- //清除操作
- clearClick: function () {
- //清除画布
- content.clearRect(0, 0, canvasw, canvash)
- content.draw(true)
- },
- //保存图片
- saveClick: function () {
- var that = this
- wx.canvasToTempFilePath({
- canvasId: 'firstCanvas',
- success: function (res) {
- //打印图片路径
- console.log(res.tempFilePath)
- //设置保存的图片
- that.setData({
- signImage: res.tempFilePath
- })
- }
- })
- }
- })
|