SignaturePad.js
3.9 KB
(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["components/SignaturePad"],{"0d02":function(t,i,n){"use strict";n.r(i);var a=n("c5b3"),e=n.n(a);for(var s in a)["default"].indexOf(s)<0&&function(t){n.d(i,t,(function(){return a[t]}))}(s);i["default"]=e.a},"3a78":function(t,i,n){},"580d":function(t,i,n){"use strict";var a=n("3a78"),e=n.n(a);e.a},c5b3:function(t,i,n){"use strict";(function(t){Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var n={name:"SignaturePad",props:{width:{type:Number,default:300},height:{type:Number,default:150},lineWidth:{type:Number,default:2},strokeColor:{type:String,default:"#000000"}},data:function(){return{canvasWidth:300,canvasHeight:150,isDrawing:!1,lastX:0,lastY:0,ctx:null,hasSignature:!1,paths:[]}},mounted:function(){this.initCanvas()},methods:{initCanvas:function(){var i=this,n=t.createSelectorQuery().in(this);n.select("#signaturePad").boundingClientRect((function(t){t?(i.canvasWidth=t.width,i.canvasHeight=t.height):console.log("未找到元素")})).exec(),this.$nextTick((function(){i.ctx=t.createCanvasContext("signature-canvas",i),i.drawBackground()}))},drawBackground:function(){this.ctx&&(this.ctx.clearRect(0,0,this.canvasWidth,this.canvasHeight),this.ctx.fillStyle="#ffffff",this.ctx.fillRect(0,0,this.canvasWidth,this.canvasHeight),this.ctx.strokeStyle="#e0e0e0",this.ctx.lineWidth=2,this.ctx.strokeRect(0,0,this.canvasWidth,this.canvasHeight),this.ctx.fillStyle="#999",this.ctx.font="16px Arial",this.redrawPaths(),this.ctx.draw())},redrawPaths:function(){var t=this;this.ctx&&0!==this.paths.length&&(this.ctx.strokeStyle=this.strokeColor,this.ctx.lineWidth=this.lineWidth,this.ctx.lineCap="round",this.ctx.lineJoin="round",this.paths.forEach((function(i){if(!(i.length<2)){t.ctx.beginPath(),t.ctx.moveTo(i[0].x,i[0].y);for(var n=1;n<i.length;n++)t.ctx.lineTo(i[n].x,i[n].y);t.ctx.stroke()}})))},startDrawing:function(t){this.isDrawing=!0,this.hasSignature=!0;var i=t.touches[0],n=i.x,a=i.y;this.paths.push([{x:n,y:a}]),this.lastX=n,this.lastY=a},draw:function(t){if(this.isDrawing){var i=t.touches[0],n=i.x,a=i.y;this.paths[this.paths.length-1].push({x:n,y:a}),this.drawBackground(),this.lastX=n,this.lastY=a}},stopDrawing:function(){this.isDrawing=!1},clearSignature:function(){this.paths=[],this.hasSignature=!1,this.drawBackground(),this.$emit("clear")},confirmSignature:function(){var i=this;this.hasSignature?this.getSignatureData().then((function(t){i.$emit("confirm",{dataUrl:t,hasSignature:i.hasSignature})})).catch((function(i){console.error("获取签字数据失败:",i),t.showToast({title:"获取签字数据失败",icon:"none"})})):t.showToast({title:"请先进行签字",icon:"none"})},getSignatureData:function(){var i=this;return new Promise((function(n,a){t.canvasToTempFilePath({canvasId:"signature-canvas",success:function(i){t.getFileSystemManager().readFile({filePath:i.tempFilePath,encoding:"base64",success:function(t){var i="data:image/png;base64,".concat(t.data);n(i)},fail:a})},fail:a},i)}))},setSignatureData:function(t){t&&this.ctx&&(this.hasSignature=!0)}}};i.default=n}).call(this,n("df3c")["default"])},e77e:function(t,i,n){"use strict";n.r(i);var a=n("ebe5"),e=n("0d02");for(var s in e)["default"].indexOf(s)<0&&function(t){n.d(i,t,(function(){return e[t]}))}(s);n("580d");var c=n("828b"),r=Object(c["a"])(e["default"],a["b"],a["c"],!1,null,"76c796f7",null,!1,a["a"],void 0);i["default"]=r.exports},ebe5:function(t,i,n){"use strict";n.d(i,"b",(function(){return a})),n.d(i,"c",(function(){return e})),n.d(i,"a",(function(){}));var a=function(){var t=this.$createElement;this._self._c},e=[]}}]);
;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
'components/SignaturePad-create-component',
{
'components/SignaturePad-create-component':(function(module, exports, __webpack_require__){
__webpack_require__('df3c')['createComponent'](__webpack_require__("e77e"))
})
},
[['components/SignaturePad-create-component']]
]);