微信海报分享新思路,思路来源于腾讯天气,
正常情况下,如果要分享海报,一般都是以下两步
1、海报生成并且保存到本地
2、从本地转发图片到微信好友
而腾讯天气这种思路可以一步完成,请看下面截图
previewImage预览能加载临时路径的图片吗
//适配不同屏幕大小的canvas
setCanvasSize: function () {
var size = {};
try {
var res = wx.getSystemInfoSync();
var scale = 750 / 686;//不同屏幕下canvas的适配比例;设计稿是750宽
var width = res.windowWidth / scale;
var height = width;//canvas画布为正方形
size.w = width;
size.h = height;
} catch (e) {
// Do something when catch error
}
return size;
},
createQrCode: function (url, canvasId, cavW, cavH) {
//调用插件中的draw方法,绘制二维码图片
QR.qrApi.draw(url, canvasId, cavW, cavH);
var that = this;
//二维码生成之后调用canvasToTempImage();延迟1s,否则获取图片路径为空
var st = setTimeout(function () {
that.canvasToTempImage();
clearTimeout(st);
}, 1000);
},
//获取临时缓存照片路径,存入data中
canvasToTempImage: function () {
var that = this;
wx.canvasToTempFilePath({
canvasId: 'mycanvas',
success: function (res) {
var tempFilePath = res.tempFilePath;
that.setData({
imagePath: tempFilePath,
});
},
fail: function (res) {
}
});
}, index: function () {
wx.reLaunch({
url: '../../pages/index/index'
})
}
,
//点击图片进行预览,长按保存分享图片
previewImg: function (e) {
var img = this.data.imagePath
console.log(this.data.imagePath)
wx.previewImage({
current: img, // 当前显示图片的http链接
urls: [img] // 需要预览的图片http链接列表
})
// console.log(img)
}
以上代码仅供思路参考,不是最终使用代码,如在实现过程中遇到问题,可以下面评论。
发表回复