微信小程序?qū)崿F(xiàn)橫屏手寫簽名_第1頁
微信小程序?qū)崿F(xiàn)橫屏手寫簽名_第2頁
微信小程序?qū)崿F(xiàn)橫屏手寫簽名_第3頁
微信小程序?qū)崿F(xiàn)橫屏手寫簽名_第4頁
微信小程序?qū)崿F(xiàn)橫屏手寫簽名_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第微信小程序?qū)崿F(xiàn)橫屏手寫簽名本文實(shí)例為大家分享了微信小程序?qū)崿F(xiàn)橫屏手寫簽名的具體代碼,供大家參考,具體內(nèi)容如下

1.關(guān)鍵配置:

pageOrientation:landscape配置該頁面橫屏展示

2.效果圖:

3.代碼:

wxml

view

canvasid="canvas"canvas-id="canvas"disable-scroll="true"bindtouchstart="canvasStart"

bindtouchmove="canvasMove"bindtouchend="canvasEnd"touchcancel="canvasEnd"

binderror="canvasIdErrorCallback"/canvas

view

請(qǐng)?jiān)诳騼?nèi)簽字

/view

view

buttontype="default"bindtap="cleardraw"重新簽名/button

buttontype="default"bindtap="getimg"提交簽字/button

/view

/view

js

constfileManager=wx.getFileSystemManager();

//canvas全局配置

varcontext=null;//使用wx.createContext獲取繪圖上下文context

varisButtonDown=false;

vararrx=[];

vararry=[];

vararrz=[];

varcanvasw=0;

varcanvash=0;

//獲取系統(tǒng)信息

wx.getSystemInfo({

success:function(res){

canvasw=res.windowHeight*1.2;//設(shè)備寬度

//canvash=res.windowWidth*7/15;

canvash=res.windowWidth*1.2;

//注冊(cè)頁面

Page({

/**

*頁面的初始數(shù)據(jù)

*/

data:{

signFlag:false,

/**

*生命周期函數(shù)--監(jiān)聽頁面加載

*/

onLoad:function(options){

context=wx.createCanvasContext('canvas');

context.setFillStyle('#fff')

context.fillRect(0,0,canvasw,canvash)

context.draw(true)

context.beginPath()

context.setStrokeStyle('#000000');

context.setLineWidth(4);

context.setLineCap('round');

context.setLineJoin('round');

onShow(){

arrx=[];

arry=[];

arrz=[];

isJSON(str){

if(typeofstr=='string'){

try{

varobj=JSON.parse(str);

if(typeofobj=='object'obj){

returntrue;

}else{

returnfalse;

}

}catch(e){

returnfalse;

}

}

canvasIdErrorCallback:function(e){},

//開始

canvasStart:function(event){

isButtonDown=true;

arrz.push(0);

arrx.push(event.changedTouches[0].x);

arry.push(event.changedTouches[0].y);

//context.moveTo(event.changedTouches[0].x,event.changedTouches[0].y);

//過程

canvasMove:function(event){

if(isButtonDown){

arrz.push(1);

arrx.push(event.changedTouches[0].x);

arry.push(event.changedTouches[0].y);

//context.lineTo(event.changedTouches[0].x,event.changedTouches[0].y);

//context.stroke();

//context.draw()

};

this.setData({

signFlag:true,

})

for(vari=0;iarrx.length;i++){

if(arrz[i]==0){

context.moveTo(arrx[i],arry[i])

}else{

context.lineTo(arrx[i],arry[i])

};

};

context.setStrokeStyle('#000000');

context.setLineWidth(4);

context.setLineCap('round');

context.setLineJoin('round');

context.stroke();

context.draw(true);

canvasEnd:function(event){

isButtonDown=false;

cleardraw:function(){

//清除畫布

arrx=[];

arry=[];

arrz=[];

context.clearRect(0,0,canvasw,canvash);

context.draw(true);

//導(dǎo)出圖片

getimg:function(){

letthat=this

if(arrx.length==0){

wx.showModal({

title:'提示',

content:'簽名內(nèi)容不能為空!',

showCancel:false

});

returnfalse;

};

console.log(this.data.signFlag);

if(!this.data.signFlag){

wx.showModal({

title:'提示',

content:'簽名內(nèi)容不能為空!',

showCancel:false

});

returnfalse;

}

//生成圖片

wx.canvasToTempFilePath({

canvasId:'canvas',

success:function(res){

//將圖片轉(zhuǎn)換為base64的格式

letbase64='data:image/jpg;base64,'+fileManager.readFileSync(res.tempFilePath,'base64');

//其他

}

})

})

wxss

page{

background:#fff;

.container{

width:95%;

position:absolute;

height:95%;

top:50%;

left:50%;

transform:translate(-50%,-50%);

box-sizing:border-box;

background:#fff;

border-radius:5px;

.canvas{

width:100%;

height:70%;

border:1pxsolid#aaa;

box-sizing:border-box;

.tips{

height:10%;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

color:#aaa;

.addBtn{

display:flex;

align-items:center;

justify-content:center;

height:18%;

position:fixed;

bottom:0;

width:100%;

background:#fff;

z-index:100;

.addBtn.txt{

text-align:center;

width:90%;

font-size:13px;

border-radius:100px;

backg

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論