微信小程序上傳圖片并等比列壓縮到指定大小的實例代碼
微信小程序官方API中 wx.chooseImage()
是可以進行圖片壓縮的,可惜的是不能壓縮到指定大小。
實際開發(fā)中需求可能是壓縮到指定大?。?/p>
原生js可以使用canvas來壓縮,但由于微信小程序對canvas有封裝,使得利用canvas來壓縮圖片有了一些區(qū)別:
直接上代碼:
主函數(shù):
以上的三個函數(shù)可以寫在一個公共的js文件里面 我是寫在 common.js中的:
html:
在html中需要添加個canvas標簽,一般這個標簽不讓他出現(xiàn)在頁面中,因為它的作用僅僅是壓縮圖片的工具:
<canvas class="canvas" canvas-id="canvas" :style="{width:cWidth+'px',height:cHeight+'px', visibility: 'hidden', 'position':'absolute', 'z-index': '-1', left: '-10000rpx',top:'-10000rpx'}"></canvas>
在methods中增加chooseImg方法:
代碼在實際項目中使用,能完成壓縮圖片到指定大小的需求。
總結
以上所述是小編給大家介紹的微信小程序上傳圖片并等比列壓縮到指定大小的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
相關文章
深入淺析JavaScript系列(13):This? Yes,this!
在這篇文章里,我們將討論跟執(zhí)行上下文直接相關的更多細節(jié)。討論的主題就是this關鍵字。實踐證明,這個主題很難,在不同執(zhí)行上下文中this的確定經常會發(fā)生問題2016-01-01