
1.首先我們要把想保存的圖片繪制在畫布上
<view class='container'>
<canvas style='width:{{canvasWidth}}px; height:{{canvasHeight}}px' class="canvas" id="canvas" canvas-id="canvas" disable-scroll="true">
</canvas>
<button bindtap='clickMe'>保存圖片</button>
</view>
2.我們在看看看js代碼在用wx.canvasToTempFilePath方法會返回一個tempFilePath圖片路徑
// canvas 全局配置
var context = null;
var rpx
var posterHeight = 0
var posterWidth = 0
var avatarPadding = 0 //距離邊界
var avatarRadiu = 0 //頭像半徑
var textScale = 0 //文字比例
//注冊頁面
Page({
data: {
img: "../../images/img1.jpg",
myCanvasWidth: 0,
myCanvasHeight: 0,
posterHeight: 0,
},
onLoad: function (options) {
var that = this
var myCanvasWidth = that.data.myCanvasWidth //為了讓圖片滿鋪頁面
var myCanvasHeight = that.data.canvasHeight
context = wx.createCanvasContext('canvas');
wx.getSystemInfo({
success: function (res) {
myCanvasWidth = res.screenWidth
myCanvasHeight = res.screenHeight
posterWidth = Math.round(res.screenWidth * 0.68) //計算讓畫布圖片自適應
posterHeight = Math.round(posterWidth * 1920 / 1080)
avatarPadding = Math.round(posterWidth * 20 / 375)
avatarRadiu = Math.round(posterWidth * 25 / 375)
textScale = Math.round(posterWidth / 375)
rpx = res.windowWidth / 375;
that.setData({
myCanvasWidth: myCanvasWidth,
myCanvasHeight: myCanvasHeight,
posterHeight: posterHeight
})
context.drawImage(that.data.img, 0, 0, that.data.myCanvasWidth, that.data.myCanvasHeight); //畫布繪制圖片
context.draw();
},
})
},
clickMe: function () { //保存圖片
wx.canvasToTempFilePath({
canvasId: 'canvas',
fileType: 'jpg',
success: function (res) {
console.log(res)
wx.saveImageToPhotosAlbum({
filePath: res.tempFilePath,
success(res) {
console.log(res)
wx.hideLoading();
wx.showToast({
title: '保存成功',
});
// //存入服務器
// wx.uploadFile({
// url: 'a.php', //接口地址
// filePath: res.tempFilePath,
// name: 'file',
// formData: { //HTTP 請求中其他額外的 form data
// 'user': 'test'
// },
// success: function (res) {
// console.log(res);
// },
// fail: function (res) {
// console.log(res);
// },
// complete: function (res) {
// }
// });
},
fail() {
wx.hideLoading()
}
})
}
})
},
})
3,css樣式 直接給畫布設置高度寬度就可以 圖片會鋪滿屏幕
總結
以上所述是小編給大家介紹的微信小程序點擊保存圖片到本機功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。