麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 課堂 > 小程序 > 正文

微信小程序圖片長按識別功能的實現方法

2020-03-21 16:11:12
字體:
來源:轉載
供稿:網友

背景

今天,做的小程序項目要求,個人中心的客服圖片在用戶長按時可以識別其二維碼

在百度無果,參考小程序官方文檔后,發現:

1.文檔中有一句提示:

"image組件中二維碼/小程序碼圖片不支持長按識別,僅在 wx.previewImage 中支持長按識別"

2.即便實現了 “wx.previewImage” 效果,但依舊是不支持二維碼識別的

附錄文檔位置:小程序圖片長按識別

代碼設計

好在這也是一個不錯的知識點,在此進行一番實現流程的記錄,歡迎指摘.

①. wxml 頁面元素設計

作為引導界面,只需放置一張圖片即可,以我的代碼為例

//# 使用簡單的實現方式,直接賦值一個圖片鏈接得了<image src="https://img.fetow.com/Public/Index/images/shewm.jpg" mode="widthFix"  data-src="https://img.fetow.com/Public/Index/images/shewm.jpg"  bindtap="previewImage"></image>

②. js 文件實現 “previewImage”方法

在對應的 js 文件中,添加了如下的方法

 /** * 圖片預覽方法 * 此處注意的一點就是,調用 "wx.previewImage"時,第二個參數要求為數組形式哦 * 當然,做過圖片上傳功能的應該會注意到,如果涉及到多張圖片預覽,圖片鏈接數組集合即為參數 urls! */  previewImage: function(e) { var current = e.target.dataset.src; wx.previewImage({  current: current,  urls: [current] }) },

③. 實現效果

可以發現,下圖中是沒有“識別圖中二維碼”的選項

微信小程序源碼,小程序開發,圖片,長按識別

如果發送給了好友或者自行保存后,在微信中打開的并長按的效果如下:

微信小程序源碼,小程序開發,圖片,長按識別

出現問題: 

1.服務器上發送過來的圖片路徑直接插進ctx.drawImage 上,手機上顯示不了。 

解決方案:利用wx.downloadFile 將圖片下載再保存好這個新圖片路徑,然后放到ctx.drawImage 上

 //下載圖片 onShow1: function (object) { let _this = this; _this.setData({  isShowCav: true }) wx.downloadFile({  url: object.avatarurl,  success: function (sres) {  _this.setData({   canvasUserPic: sres.tempFilePath  });  wx.downloadFile({   url: object.show_img,   success: function (sres1) {   _this.setData({    canvasShowImg: sres1.tempFilePath   });   _this.canvas(object);   }  })  } }) }, 

2.canvas出現在手機上的頂層,不管z-index設置多少層都沒有用。 

解決方案:利用wx:if="{{isShowCav}}" 將canvas臨時隱藏,要用到的時候再顯示。不用再隱藏掉。

3.canvas里面的文字如何居中,官方文檔雖然提供了案例,但是沒有說具體是怎么用的。 

解決方案:

const ctx = wx.createCanvasContext('myCanvas')ctx.setStrokeStyle('red')ctx.moveTo(150, 20)ctx.lineTo(150, 170)ctx.stroke()ctx.setFontSize(15)ctx.setTextAlign('left')ctx.fillText('textAlign=left', 150, 60)ctx.setTextAlign('center')ctx.fillText('textAlign=center', 150, 80)ctx.setTextAlign('right')ctx.fillText('textAlign=right', 150, 100)ctx.draw()

微信小程序源碼,小程序開發,圖片,長按識別

這里面的居中不是我們常用的css那種居中;而是忽略了文字寬高的意思,所以你還是要給文字設置一個(x,y)坐標,只要將這個坐標寫上canvas寬度的一半,它就可以實現居中了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩激情一区二区三区 | 一级毛片大片 | 欧美一级免费看 | 射逼网站| 亚洲码无人客一区二区三区 | 午夜视频在线观 | 欧美一级高潮 | 国产精品成人久久 | 99精品国产视频 | 久久国产精品二国产精品中国洋人 | 国产精品久久av | 人人舔人人舔 | 日本中文视频 | 亚洲少妇诱惑 | 美女羞羞视频在线观看 | 国产一级爱c视频 | 久久综合久久综合久久 | 狠狠操夜夜爱 | 国产一区二区视频在线播放 | 国产午夜精品理论片a级探花 | 亚洲第五色综合网 | 国内精品久久久久久久久久 | 日韩黄色一级视频 | 成人做爰s片免费看网站 | 亚洲一区二区成人 | 一区二区久久电影 | 1级毛片在线观看 | 第一区免费在线观看 | 免费播放av| 亚洲精品一区国产精品丝瓜 | 精品在线免费播放 | 国产一区二区精品免费 | 97超级碰碰人国产在线观看 | 国产免费观看a大片的网站 欧美成人一级 | 久久国产精品影视 | 色综合久久久久久久粉嫩 | 国产午夜电影在线观看 | 国产二区三区在线播放 | 91小视频在线观看免费版高清 | 久久精品国产一区二区 | 欧美五月婷婷 |