最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序如何使用canvas二維碼保存至手機相冊

 更新時間:2019年07月15日 08:35:00   作者:咸土豆  
這篇文章主要介紹了微信小程序如何使用canvas二維碼保存至手機相冊的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用微信小程序具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧

前言

在使用canvas繪制海報的過程中不建議使用原生來進行畫圖,因為默認是不支持rpx像素的,px不會做到自適應。

推薦使用插件 Painter

github地址

github.com/Kujiale-Mob (本地下載)…

配置很簡單,也容易上手,無論是畫矩形,還是將圖片合成canvas;還是自己定義文字;都是很方便的。

附上一個簡單的例子吧

 <painter :customStyle="customStyle" :palette="imgDraw" />
//
 const _this=this;
   wx.getSystemInfo({
    success (res) {
     _this.drawCanvas(res.windowHeight);
    }
   })
	 
drawCanvas(height) {
//這里的canvas的高是動態(tài)獲取設備的高度,做到自適應
    const that = this;
   let heightVal=height*2+'rpx';
   this.imgDraw = {
    width: '750rpx',
    height: heightVal,
    background: '#fff',
    views: [
     {
      type: "rect",
      css: {
       top: '20rpx',
       left: '130rpx',
       color: '#1A1A1A',
       width: '660rpx',
       height: '220rpx',
       borderRadius: '32rpx'
      }
     },
     {
      type: 'image',
      url: './a.jpg',
      css: {
       top: '36rpx',
       left: '16rpx',
       width: '188rpx',
       height: '188rpx'
      }
     },
     {
      type: 'text',
      text: '',
      css: {
       top: '54rpx',
       left: '260rpx',
       fontSize: '48rpx',
       color: "#fff"
      }
     },
     {
      type: 'text',
      text: '文字部分',
      css: {
       top: '134rpx',
       left: '260rpx',
       fontSize: '30rpx',
       color: "#d1d1d1"
      }
     },
     {
      type: 'text',
      text: '1333333333',
      css: {
       top: '196rpx',
       left: '260rpx',
       fontSize: '26rpx',
       color: "#d1d1d1"
      }
     },
     {
      type: 'text',
      text: '李四',
      css: {
       top: '304rpx',
       left: '302rpx',
       fontSize: '24rpx',
       color: "#767676"
      }
     },
     {
      type: 'image',
      url: '/icon-localtion.png',
      css: {
       top: '275rpx',
       left: '260rpx',
       width: '26rpx',
       height: '168rpx'
      }
     },
     {
      type: 'image',
      url: '二維碼.png',
      css: {
       top: '646rpx',
       left: '236rpx',
       width: '278rpx',
       height: '278rpx'
      }
     }
    ]
   }

  
   let { path: __path } = mpvue.getStorageSync('createImagePath')
   mpvue.saveImageToPhotosAlbum({
    filePath: __path,
    success(res) {
     // mpvue.showToast({
     //  title: '保存成功',
     //  icon: 'success',
     //  duration: 800,
     //  mask: true
     // });
   
    },
    fail(res) {
     // mpvue.showToast({
     //  title: '保存失敗',
     //  icon: 'fail',
     //  duration: 800,
     //  mask: true
     // });
    }
   });
  },

這里涉及到畫二維碼, 如果你的二維碼圖片不是一個線上的鏈接的話,這時需要做一些小操作。

我的項目中二維碼的圖片傳過來是一個流,所以用img的src默認發(fā)送get請求,就能拿到這個圖片了。

所以url會直接發(fā)送get請求拿到圖片。

canvas的層級

canvas的層級是最高的,底部的分享塊會被遮住,這時你需要用兩套方案,一個是純展示用的,用正常的html來寫,給用戶看這個名片。

下載或分享的時候再y用canvas生產(chǎn)你想要圖片,接著調(diào)用微信的保存api,將圖片下載或分享。

let { path: __path } = mpvue.getStorageSync('createImagePath')
mpvue.saveImageToPhotosAlbum({
 filePath: __path,
 success(res) {
  // mpvue.showToast({
  //  title: '保存成功',
  //  icon: 'success',
  //  duration: 800,
  //  mask: true
  // });

 },
 fail(res) {
  // mpvue.showToast({
  //  title: '保存失敗',
  //  icon: 'fail',
  //  duration: 800,
  //  mask: true
  // });
 }
});

此時就能順利完成保存名片的功能了。

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

相關文章

最新評論

铁岭市| 安福县| 丽江市| 建德市| 灵武市| 阳原县| 武功县| 星子县| 贞丰县| 西乌珠穆沁旗| 邹城市| 汾阳市| 阜城县| 蒙城县| 那曲县| 武清区| 灵石县| 广宗县| 塘沽区| 涿州市| 蓝山县| 沾化县| 凌源市| 湘潭县| 泰来县| 镇原县| 广汉市| 太仓市| 柞水县| 德清县| 嘉义市| 怀化市| 镇原县| 怀来县| 柘城县| 台东县| 罗田县| 丹棱县| 沂源县| 三门县| 永德县|