小程序下载canvas生成图片
save_share_img:function(img){
var that = this;
let { result } = that.data;
getData.getData(
"save_share_img",
{
id : result.id,
share_img_link : img,
method : "POST"
},
function(data) {
if (data.errno){
console.log(data.errdesc);
return;
}
result.share_img = img;
that.setData({
result: result
});
}
);
},
download:function(){
var that = this;
let { urls,result } = that.data;
console.log(result);
if (result.share_img == ''){
// 临时图片上传cdn
wx.uploadFile({ // 需要传到cdn 才可以下载!!!!!
url : "https://a.xxxxx.com/xxxxx/Public/upload_more_img",
filePath : urls,
name : "file",
success : res => {
},
fail : res => {
},
complete: res => {
var imgdata = JSON.parse(res.data);
var img = imgdata.data[];
that.save_share_img(img);
urls = img;
}
})
} else {
urls = result.share_img;
}
console.log('download---start');
console.log(urls);
wx.downloadFile({
url: urls,
//url:'https://cdn.xxxxxx.net/avatar_3.png', // canvas 生成的临时图片不可
success: function(res) { // 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容
console.log(res)
if (res.statusCode == ) {
wx.saveImageToPhotosAlbum({
filePath: res.tempFilePath,
success: function(res) {
console.log(res);
console.log('succ');
wx.showToast({
title: '保存图片成功!~',
});
that.setData({
mask_btn: ,
share_btn: false,
canvas_btn:false
});
},
fail: function(res) {
console.log(res);
console.log('fail');
wx.showToast({
title: '保存图片失败!~'
});
},
complete:function(res){
console.log(res);
console.log('complete');
}
})
} else {
console.log('下载图片发生错误----');
wx.showToast({
title: '保存图片发生错误!~'
});
}
},
fail: function(res){
console.log('下载图片发生错误');
console.log(res);
}
});
console.log('download---over');
},
previewImg: function() {
var that = this;
wx.getSetting({
success(res) {
console.log('-------------');
console.log(res);
if (!res.authSetting['scope.writePhotosAlbum']) { // 获取授权!!!!
wx.authorize({
scope:'scope.writePhotosAlbum',
success() {
that.download();
console.log('授权成功')
}
});
} else {
that.download();
console.log('已授权');
}
}
})
小程序下载canvas生成图片的更多相关文章
- 关于微信小程序使用canvas生成图片,内容图片跨域的问题
最近有个项目是保存为名片(图片),让用户发送给朋友或朋友圈,找了很多方案都不适用,绞尽脑汁之后还是选了使用canvas,但是用这玩意儿生成图片最大的缺点就是,如果你的内容中有图片,并且这个图片是通过外 ...
- wx小程序用canvas生成图片流程与注意事项
1.需要画入canvas的 图片都需要先缓存到本地 let ps = [] ps.push(that.loadImageFun(this.statusInfo.avatar_url, "he ...
- 小程序利用canvas 绘制图案 (生成海报, 生成有特色的头像)
小程序利用canvas 绘制图案 (生成海报, 生成有特色的头像) 微信小程序生成特色头像,海报等是比较常见的.下面我来介绍下实现该类小程序的过程. 首先选择前端来通过 canvas 绘制.这样比较节 ...
- 微信小程序-基于canvas画画涂鸦
代码地址如下:http://www.demodashi.com/demo/14461.html 一.前期准备工作 软件环境:微信开发者工具 官方下载地址:https://mp.weixin.qq.co ...
- 微信小程序 在canvas画布上划动,页面禁止滑动
要实现微信小程序 在canvas画布上划动,页面禁止滑动,不仅要设置disable-scroll="true",还要要给canvas绑定一个触摸事件才能生效. <canvas ...
- 关于微信小程序前端Canvas组件教程
关于微信小程序前端Canvas组件教程 微信小程序Canvas接口函数 上述为微信小程序Canvas的内部接口,通过熟练使用Canvas,即可画出较为美观的前端页面.下面是使用微信小程序画图的一些 ...
- 微信小程序利用canvas生成海报分享图片
一 . 效果 这是借用女神照生成的分享的海报,图片来自网络. 新增了poster组件和更新图片自适应 二 . 准备 准备两张图片连接,最好是自己开发账号验证的https图片链接. 三 . 实现思路 其 ...
- 兼容小程序的canvas画图组件jmGraph
基于CANVAS的简单画图组件让你用类似于dom的方式,在canvas上画图,感觉会不会很爽. 主页:http://graph.jm47.com/示例:http://graph.jm47.com/ex ...
- 微信小程序之canvas绘制海报分享到朋友圈
绘制canvas内容 首先,需要写一个canvas标签,给canvas-id命名为shareBox <canvas canvas-id="shareBox"></ ...
随机推荐
- Mybatis二级缓存的简单应用
1.接口 public interface MemberMapperCache { public Members selectMembersById(Integer id); } 2.POJO类 实现 ...
- h5格式化微信 nickname 保留第一个字,其余用*显示
截取微信nickname中需要注意的是,表情符号和特殊字符,如果你不用正则过滤掉的话,使用slice(0,1)直接截取第一个字符串是不行的,因为表情符号占用两个字节,截取一半,ios会报错,andro ...
- Visual Studio Code IDE + Docker实现PHP Xdebug调试
一.Docker中安装配置Xdebug 通过phpinfo()输出当前安装的PHP版本信息,将信息拷贝到https://xdebug.org/wizard.php相应输入框中,系统会自动检测并推荐合适 ...
- django设置时区与语言
django的目录下,django/conf/locale,这个目录下,看有什么语言包, zh_Hans代表中文简体,zh_Hant代表中文繁体,设置即可. TIME_ZONE设置为:Asia/Sha ...
- vue-cli 创建项目不成功 原因为项目文件夹无node_modules文件 进行npm install不成功解决办法
不知道有没有童鞋出现过全局安装vue-cli是成功的,但是创建项目时命令行报了很多错误,如下 本来是需要按照提示依次切换到项目文件夹,再npm run dev 即可完成项目创建并启动的,但是又报了如下 ...
- 17.组件页面应用和vue项目生成
基本示例 这里有一个 Vue 组件的示例: // 定义一个名为 button-counter 的新组件 Vue.component('button-counter', { data: function ...
- tinymce编辑器从word粘贴公式
很多时候我们用一些管理系统的时候,发布新闻.公告等文字类信息时,希望能很快的将word里面的内容直接粘贴到富文本编辑器里面,然后发布出来.减少排版复杂的工作量. 下面是借用百度doc 来快速实现这个w ...
- BZOJ 4570: [Scoi2016]妖怪
二次联通门 : BZOJ 4570: [Scoi2016]妖怪 二次联通门 : luogu P3291 [SCOI2016]妖怪 LibreOJ : LibreOJ #2015. 「SCOI2016 ...
- visual studio2015窗体中控件的属性中文说明不见了
右击属性窗口,然后选中好说明就ok了.
- wepy框架滑动组件使用
https://github.com/dlhandsome/wepy-com-swiper