溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Cordova各個(gè)插件使用介紹系列(四)—canvas2ImagePlugin保存二維碼到手機(jī)本地

發(fā)布時(shí)間:2020-07-19 07:31:07 來(lái)源:網(wǎng)絡(luò) 閱讀:1229 作者:zhangxiangj 欄目:開(kāi)發(fā)技術(shù)

詳情鏈接地址:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/cordova-4-canvas2p_w_picpathplugin/
在前面幾篇文章中簡(jiǎn)單寫(xiě)了一下,在項(xiàng)目中怎么實(shí)現(xiàn)掃描的功能和將信息轉(zhuǎn)化為二維碼的功能,現(xiàn)在來(lái)介紹一下怎么將生成的二維碼保存到手機(jī)的本地,這樣關(guān)于二維碼的內(nèi)容基本上就全面了,好開(kāi)心~~!

同樣的,我還是想說(shuō),首先我這個(gè)是做基于ionic+ngCordova+Anjularjs的項(xiàng)目,所以,希望大家在看之前已經(jīng)了解了這三塊內(nèi)容了,不然,可能看起來(lái)會(huì)有難度的。

一、下載相關(guān)的插件的命令:

 

[javascript] view plain copy

  1. cordova plugin add https://github.com/devgeeks/Canvas2ImagePlugin.git  

  

二、HTML代碼:

 

[html] view plain copy

  1. <div class="col text-center">  

  2.     <span>(二維碼)</span>  

  3.   

  4.     <div class="cro">  

  5.         <div id="Qrcode">  

  6.             <div class="cro_left_top"></div>  

  7.             <div class="cro_right_top"></div>  

  8.             <div class="cro_left_bottom"></div>  

  9.             <div class="cro_right_bottom"></div>  

  10.         </div>  

  11.         <button class="button button-positive"  

  12.                 ng-click="saveImageQrcode()">保存到手機(jī)  

  13.         </button>  

  14.     </div>  

  15. </div>  

  

三、CSS代碼,根據(jù)UI實(shí)現(xiàn)了如下界面的CSS代碼:

 Cordova各個(gè)插件使用介紹系列(四)—canvas2ImagePlugin保存二維碼到手機(jī)本地

[css] view plain copy

  1. <style type="text/css">  

  2.     .cro {  

  3.         width300px;  

  4.         height360px;  

  5.         positionrelative;  

  6.         text-aligncenter;  

  7.         marginauto;  

  8.         backgroundwhite;  

  9.     }  

  10.   

  11.     .cro_left_top, .cro_right_top, .cro_left_bottom, .cro_right_bottom {  

  12.         positionabsolute;  

  13.         width20px;  

  14.         height20px;  

  15.         z-index1;  

  16.         background#212A27;  

  17.     }  

  18.   

  19.     .cro_left_top {  

  20.         top: -1px;  

  21.         left: -1px;  

  22.         border-radius: 0px 0px 20px 0px;  

  23.     }  

  24.   

  25.     .cro_right_top {  

  26.         top: -1px;  

  27.         right: -1px;  

  28.         border-radius: 0px 0px 0px 20px;  

  29.     }  

  30.   

  31.     .cro_left_bottom {  

  32.         left: -1px;  

  33.         bottom: -1px;  

  34.         border-radius: 0px 20px 0px 0px;  

  35.     }  

  36.   

  37.     .cro_right_bottom {  

  38.         right: -1px;  

  39.         bottom: -1px;  

  40.         border-radius: 20px 0px 0px 0px;  

  41.     }  

  42. </style>  

 

四、JS代碼如下:

[javascript] view plain copy

  1. var qrcode = new QRCode(document.getElementById("Qrcode"), {  

  2.     width: 200,  

  3.     height: 200  

  4. });  

  5. qrcode.makeCode("123");  

  6.   

  7. var a = document.getElementById("Qrcode");  

  8. var canvas = a.children[4];  

  9. canvas.id = "myCanvas";  

  10. $scope.saveImage = canvas.toDataURL();  

  11.   

  12. //調(diào)用保存二維碼圖片的函數(shù)  

  13. $scope.saveImageQrcode = function () {  

  14.     console.log(window.canvas2ImagePlugin);  

  15.     window.canvas2ImagePlugin.saveImageDataToLibrary(function (msg) {  

  16.             console.log(msg);  

  17.             $rootScope.alert('圖片已保存');  

  18.         },  

  19.         function (err) {  

  20.             console.log(err);  

  21.         },  

  22.         document.getElementById('myCanvas')  

  23.     )  

  24. };  

  


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI