1.需要画入canvas的 图片都需要先缓存到本地 let ps = [] ps.push(that.loadImageFun(this.statusInfo.avatar_url, "headImg")) Promise.all(ps).then(res => { // 画图 }) loadImageFun(url, index) { let _this = this return new Promise((resolve, reject) => { wx.downloa…
最近有个项目是保存为名片(图片),让用户发送给朋友或朋友圈,找了很多方案都不适用,绞尽脑汁之后还是选了使用canvas,但是用这玩意儿生成图片最大的缺点就是,如果你的内容中有图片,并且这个图片是通过外链链接进来的,那么很容易造成跨域而无法生成图片的问题,以下就是我解决该问题的办法: *提前说一句,在做这个功能的时候,我发现跨域的问题没法解决,唯一能做的就是把图片放到和canvas相同的域里 1,以下是微信小程序的wxml文件部分 <canvas canvas-id='share' width=&qu…
1.单位换算问题,canvas的尺寸单位是px,所以单位需要做个换算,可以通过wx.getSystemInfo获取屏幕宽高(单位是px),微信小程序无论什么机型,屏幕宽度都是750rpx,因此可以做个rpx和px之间的单位换算,问题就解决了: 2.canvas不支持使用网络图片绘图,所以图片要么是本地的,如果不是固定的,那就要用wx.downloadFile下载后得到一个临时路径才行: 3.绘制完成后需要导出图片要在draw的回调中导出,否则可能会导出一张空白的图片:…
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); retur…
小程序利用canvas 绘制图案 (生成海报, 生成有特色的头像) 微信小程序生成特色头像,海报等是比较常见的.下面我来介绍下实现该类小程序的过程. 首先选择前端来通过 canvas 绘制.这样比较节省成本,效率也高. 小程序使用uniapp 来进行开发,方便后期打包为微信,百度等小程序. 可以扫码体验下 我的小程序 制作个性化的头像, 下面介绍使用 wxml2canvas 生成头像的小程序的制作过程 创建项目 使用HBuilderX 创建一个 uni-app 的项目,可以参照uniapp 官网…
微信小程序开发的基本流程 一,微信小程序简介 1,微信小程序简称小程序,张小龙在微信公开课 Pro 上发布的小程序正式上线,时间是2017年1月9日. 2,微信小程序这个词可以分解为“微信”和“小程序”两部分 (1),其中“微信”可以理解为“微信中的”,指的是小程序的执行环境:当然微信在提供执行环境的同时也延长了用户使用微信的时间. (2),“小程序”是说它首先是程序,然后具备轻便的特征.小程序并不像其他应用那样,它不需要安装,而是通过扫描二维码等打开后直接执行:用完以后也不需要卸载.这就是所谓…
代码地址如下:http://www.demodashi.com/demo/14461.html 一.前期准备工作 软件环境:微信开发者工具 官方下载地址:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html 1.基本需求. 实现用户自定画笔大小 实现用户自定色彩 实现用户动画撤回之前的操作 实现生成分享海报 实现用户预览画作,清除画布 2.案例目录结构 二.程序实现具体步骤 1.index.wxml代码 <view cl…
关于微信小程序前端Canvas组件教程 微信小程序Canvas接口函数 ​ 上述为微信小程序Canvas的内部接口,通过熟练使用Canvas,即可画出较为美观的前端页面.下面是使用微信小程序画图的一些例子. 微信小程序画图实例 基本步骤 wxml中代码: <canvas canvas-id="myCanvas" class="myCanvas" ></canvas> js中onLoad()函数 const ctx = wx.createCan…
wx小程序内置的接口只能获取用户的坐标,通过微信位置服务获取用户地址: http://lbs.qq.com/qqmap_wx_jssdk/index.html 注:需要在key的设置中打开webService并设置,小程序的合法域名(当前小程序的服务器域名)为允许ip…
要实现微信小程序 在canvas画布上划动,页面禁止滑动,不仅要设置disable-scroll="true",还要要给canvas绑定一个触摸事件才能生效. <canvas canvas-id="myCanvas" class="myCanvas"  disable-scroll="false" bindtouchstart="touchStart" bindtouchmove="touc…