小程序canvas使用网络图片真机不显示解决方案----可直接使用案例测试
【摘要】
图片都是线上的,可以直接放到onLoad里边自动检测
1.注意点: 在绘制网络图片时必需先将其保存到本地然后在绘制。当我们在加载一个带有图片的页面时,图片都会被暂存到本地,由此我们可以通过wx.gerImageInfo接口访问本地的暂存路径来调用drawImage方法绘制图片。如下:(注意网络图片的地址一定要在合...
图片都是线上的,可以直接放到onLoad里边自动检测
1.注意点: 在绘制网络图片时必需先将其保存到本地然后在绘制。当我们在加载一个带有图片的页面时,图片都会被暂存到本地,由此我们可以通过wx.gerImageInfo接口访问本地的暂存路径来调用drawImage方法绘制图片。如下:(注意网络图片的地址一定要在合法域名内)
-
/*
-
* author:咔咔
-
* address:陕西西安
-
* wechat:fangkangfk
-
* */
-
-
// 小程序二维码
-
var path1 = 'https://www.weiuid.com/attachs/uploads/20180913/6386.png';
-
const ctx = wx.createCanvasContext('myCanvas')
-
// // 封面图
-
var path = 'https://www.weiuid.com/attachs/uploads/20180912/d70711527c3ca66054f9989af7975d87.jpg';
-
wx.getImageInfo({
-
src: path,//服务器返回的图片地址
-
success: function (res) {
-
//res.path是网络图片的本地地址
-
let Path = res.path;
-
-
ctx.drawImage(Path, 0, 0, 400, 200)
-
-
},
-
fail: function (res) {
-
//失败回调
-
}
-
});
-
-
var that = this;
-
//获取网络图片本地路径
-
wx.getImageInfo({
-
src: path1,//服务器返回的图片地址
-
success: function (res) {
-
//res.path是网络图片的本地地址
-
let Path = res.path;
-
-
ctx.drawImage(Path, 140, 300, 100, 100)
-
ctx.draw(false, function () {
-
wx.canvasToTempFilePath({
-
canvasId: 'myCanvas',
-
success: function (res) {
-
console.log(res.tempFilePath)
-
wx.previewImage({
-
urls: [res.tempFilePath] // 需要预览的图片http链接列表
-
})
-
}
-
})
-
});
-
},
-
fail: function (res) {
-
//失败回调
-
}
-
});
文章来源: blog.csdn.net,作者:咔咔-,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/fangkang7/article/details/82711830
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)