基于JavaScript實(shí)現(xiàn)電子簽名功能
一:elesigncode拓展包下載
1:github地址:https://github.com/yinhui1129754/elesigncode
2:npm下載:
npm install?elesigncode
二:elesigncode常用方法
方法名稱 | 描述 | 參數(shù) | 返回值 |
---|---|---|---|
init | 初始化方法 | 無 | 無 |
undo | 撤銷方法 | 無 | 無 |
redo | 重做方法 | 無 | 無 |
toJson | 將當(dāng)前實(shí)例簽名的數(shù)據(jù)轉(zhuǎn)化為json | 無 | 無 |
toPng | 獲取當(dāng)前簽名的base64位數(shù)據(jù)png類型 | 無 | 無 |
toJpeg | 獲取當(dāng)前簽名的base64位數(shù)據(jù)jpeg類型 | 無 | 無 |
setColor | 設(shè)置簽名的顏色 | color:顏色字符串rgb hex均可以 | 無 |
setLineWidth | 設(shè)置線寬 | lineWidth:線寬 | 無 |
setBgColor | 設(shè)置背景顏色 | bgColor:顏色字符串rgb hex均可以 | 無 |
setPen | 設(shè)置筆的類型 | name:'default' 'writing' | 無 |
clear | 清除簽名 | 無 | 無 |
isEmpty | 獲取是否簽名了 | 無 | 返回true表示是沒有簽名,返回false表示簽名了 |
三:elesigncode實(shí)現(xiàn)實(shí)例
1:html
<div id="test" style="width: 60%;height: 500px;margin: auto;border: 1px solid #333"> </div> <button id="undo">撤銷</button> <button id="clear">清除</button> <button id="getJson">獲取json</button> <button id="downloadPng">獲取透明圖片</button> <button id="downloadJpeg">獲取不透明圖片</button>
2:js
<script type="text/javascript" src="./release/lib/dzjm.min.js"></script> <script> var ele = document.getElementById("test"); var eleSign = new EleSign({ ele: null });//實(shí)例化對(duì)象 eleSign.init(); //初始化 eleSign.moutedEle(ele) //將簽名節(jié)點(diǎn)放入到傳入的element節(jié)點(diǎn)中 eleSign.setPen("default");//設(shè)置簽名樣式:default(默認(rèn)樣式),writing(毛筆樣式) eleSign.setColor('#f00');//設(shè)置簽名顏色 eleSign.setBgColor('#333');//設(shè)置背景顏色 //將當(dāng)前實(shí)例簽名的數(shù)據(jù)轉(zhuǎn)化為json document.getElementById("getJson").addEventListener("click", function () { var jsonStr = eleSign.toJson(); console.log(jsonStr); alert(jsonStr); }) //下載png document.getElementById("downloadPng").addEventListener("click", function () { if (eleSign.isEmpty() === false) { var baseUrl = eleSign.toPng(); var a = document.createElement("a"); document.body.appendChild(a); a.setAttribute("href", baseUrl); a.setAttribute("download", "png圖片"); a.click(); document.body.removeChild(a); } else { alert('請(qǐng)簽名') } }) //下載jpeg document.getElementById("downloadJpeg").addEventListener("click", function () { if (eleSign.isEmpty() === false) { var baseUrl = eleSign.toJpeg(); var a = document.createElement("a"); document.body.appendChild(a); a.setAttribute("href", baseUrl); a.setAttribute("download", "jpeg圖片"); a.click(); document.body.removeChild(a); } else { alert('請(qǐng)簽名') } }) //撤銷 document.getElementById("undo").addEventListener("click", function () { eleSign.undo(); }) //清除 document.getElementById("clear").addEventListener("click", function () { eleSign.clear(); }) </script>
如上我們就可以實(shí)現(xiàn)電子簽名功能了
到此這篇關(guān)于基于JavaScript實(shí)現(xiàn)電子簽名功能的文章就介紹到這了,更多相關(guān)JavaScript電子簽名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript中時(shí)間日期函數(shù)new?Date()詳解(5種獲取時(shí)間戳的函數(shù))
這篇文章主要給大家介紹了關(guān)于JavaScript中時(shí)間日期函數(shù)new?Date()的相關(guān)資料,主要講的是JS中5種獲取時(shí)間戳的函數(shù),new Date()是JavaScript中用于獲取當(dāng)前日期和時(shí)間的內(nèi)置函數(shù),需要的朋友可以參考下2024-04-04JavaScript 實(shí)現(xiàn)鍋拍灰太狼小游戲
這篇文章主要介紹了JavaScript 實(shí)現(xiàn)鍋拍灰太狼小游戲,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09微信小程序從服務(wù)器中獲取數(shù)據(jù)的示例代碼
要從服務(wù)器中獲取數(shù)據(jù),可以使用微信小程序提供的wx.request()方法,下面通過示例代碼介紹微信小程序怎么從服務(wù)器中獲取數(shù)據(jù),感興趣的朋友一起看看吧2024-03-03JavaScript實(shí)現(xiàn)彈出式可拖動(dòng)登錄框
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)彈出式可拖動(dòng)登錄框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01小程序圖片長(zhǎng)按識(shí)別功能的實(shí)現(xiàn)方法
這篇文章主要介紹了小程序圖片長(zhǎng)按識(shí)別功能的實(shí)現(xiàn)方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08CSS3+JavaScript實(shí)現(xiàn)翻頁幻燈片效果
這篇文章主要介紹了CSS3+JavaScript實(shí)現(xiàn)翻頁幻燈片效果,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-06-06Extjs 中的 Treepanel 實(shí)現(xiàn)菜單級(jí)聯(lián)選中效果及實(shí)例代碼
這篇文章主要介紹了Extjs 中 Treepanel 實(shí)現(xiàn)菜單級(jí)聯(lián)選中效果,需要的朋友可以參考下2017-08-08