楼主你好,我有同样的问题。我的场景是做企业微信到内部的单点登录,请问解决这个问题了吗?
同一个企业微信账号,不同自建应用,获取到的accessToken是否可以共用?在一个企业微信账号下,申请若干个不同的自建应用,当自建应用A获取到accessToken时,自建应用B、C、D是否可以直接使用这个accessToken调用其他接口,比如通过这个accessToken和code获取userInfo? accessToken是以企业微信的corpId为对应关系,还是自建应用的AgentId为对应关系的?
2020-12-03楼主解决了吗?我的图片也是只出现左上角一块。 我是把canvas大小动态设置的。 固定成100vw和100vh的时候,canvas可以正常显示。 但是动态设置canvas大小之后,就会出现问题。 我看你也是动态设置的大小。
canvas处理图片上传保存图片流只显示一半- 当前 Bug 的表现(可附上截图) [图片] - 预期表现 - 复现路径 - 提供一个最简复现 Demo js代码 wx.chooseImage({ count: 1, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: itemIndex == 0 ? ['album'] : ['camera'], success: (res) => { console.log(res.tempFilePaths) const item = new IMOperator(this).createNormalChatItem({ type: 'image', content: res.tempFilePaths, isMy: true, }); that.data.chatItems.push(item); that.setData({ chatItems: that.data.chatItems, scrollTopVal: that.data.scrollTopVal + 999, }); // 图片加水印功能 // var arr = that.data.fileList // res.tempFilePaths.forEach(function(item) { // arr.push(item) // }) // that.setData({ // fileList: arr // }) //获取图片详细信息 wx.getImageInfo({ src: res.tempFilePaths[0], success: (ress) => { console.log(ress) let date = new Date(); let time = that.formartDate(date); let ctx = wx.createCanvasContext('firstCanvas'); that.setData({ canvasHeight: ress.height, canvasWidth: ress.width }) //将图片src放到cancas内,宽高为图片大小 ctx.drawImage(res.tempFilePaths[0], 0, 0, ress.width, ress.height) //将声明的时间放入canvas ctx.setFontSize(20) //注意:设置文字大小必须放在填充文字之前,否则不生效 ctx.setFillStyle('blue') // ctx.setGlobalAlpha(0.5) ctx.fillText('15200000001', that.data.canvasWidth - 400, that.data.canvasHeight - 150) ctx.fillText(time, that.data.canvasWidth - 500, that.data.canvasHeight - 100) ctx.draw(false, function() { wx.canvasToTempFilePath({ canvasId: 'firstCanvas', success: (res) => { that.setData({ canvesimgurl:res.tempFilePath }) }, fail: (e) => { console.log(e) } }) }) wx.uploadFile({ url: '、、、', filePath: that.data.canvesimgurl, name: 'file', formData: {}, header: { "Content-Type": "multipart/form-data" }, success: function (res) { console.log(res) var url = res.data.url; var data = res.data.fileId; var imgtype = "image"; if (res.statusCode == 200) { that.sendmessage(data, url, imgtype) } else { let index = parseInt(that.data.chatItems.length - 1); that.updateViewWhenSendFailed(index) } console.log(res.data) }, fail: function (res) { console.log(res) }, complete: function (res) { console.log(res) } }) } }) } }); });
2018-08-28你保存下来看看 我猜是透明的 不是黑色的
为什么canvas生成图片全部变成黑色了?- 需求的场景描述(希望解决的问题) 我这是弄在自定义组件里的 var context = null; // 使用 wx.createContext 获取绘图上下文 context var isButtonDown = false; var arrx = []; var arry = []; var arrz = []; let canvasw = 0; let canvash = 0; // 初始化 ready() { context = wx.createCanvasContext('canvas', this); context.beginPath(); context.setStrokeStyle('#000000'); context.setLineWidth(4); context.setLineCap('round'); context.setLineJoin('round'); }, context.draw(true, () => {wx.canvasToTempFilePath({ x: 15, y: 150, width: 150, height: 150, destWidth: 320, destHeight: 325, canvasId: 'canvas', success: function (res) { console.log(res.tempFilePath); wx.previewImage({ current: res.tempFilePath, // 当前显示图片的http链接 urls: [res.tempFilePath] // 需要预览的图片http链接列表 }) }, fail: function (err) { console.log(err) } }, this)}); 我就发了初始化 和 生成图片的 代码段 - 希望提供的能力
2018-08-20谢谢大佬们。我的问题已经解决了。 let unit = that.data.screenWidth / 375; 原因是这句代码,不兼容iphone5或者375 以下的屏幕宽度。加个条件判断,把unit在小于375的情况下的逻辑再实现一遍就好了。 但是更好的解决方式不是通过判断375来确定unit 而是直接根据屏幕大小来画canvas。 引以为戒! 另外,也并不是官方给的这部分代码的错误。 如果有同类问题,望规避。
canvas画出来的图像在iphone5上保存为空图片createShare: function () { let that = this; let unit = that.data.screenWidth / 375; let context = wx.createCanvasContext('canvas', this); that.setData({ 'canvasHidden': false }); wx.downloadFile({ url: app.globalData.imageUrl + '/inviteFriend.png', success: function (res) { console.log(res); that.setData({ 'inviteFriend': res.tempFilePath }) console.log(parseInt(that.data.screenWidth)); if (parseInt(that.data.screenWidth) < 375 ){ context.drawImage(that.data.inviteFriend, 0, 0, 320 * parseInt(unit), 530 * parseInt(unit));//背景 }else{ context.drawImage(that.data.inviteFriend, 0, 0, 375 * parseInt(unit), 620 * parseInt(unit));//背景 } context.setFontSize(36 * parseInt(unit)); context.setFillStyle('#02C07B'); context.fillText(that.data.inviteCode + '', 124 * parseInt(unit), 195 * parseInt(unit)); context.setFontSize(14 * parseInt(unit)); context.setFillStyle('rgb(102,102,102)'); context.fillText('我是' + app.globalData.userInfo.nickName, 50 * parseInt(unit), 251 * parseInt(unit)); context.fillText('邀请您', 50 * parseInt(unit), 271 * parseInt(unit)); context.fillText('我的邀请次数有限,赶快加入哦~', 50 * parseInt(unit), 291 * parseInt(unit)); //保存图片 context.draw(false,function () { wx.canvasToTempFilePath({ canvasId: 'canvas', success : function (res) { if (!res.tempFilePath) { wx.showToast({ title: '图片绘制中', icon:'none' }) } console.log(that.data.shareImgPath) wx.saveImageToPhotosAlbum({ filePath: res.tempFilePath, success: (res) => { console.log(res) wx.hideLoading(); that.setData({ canvasHidden: true }) wx.showToast({ title: '图片保存成功', icon: 'success' }); }, fail: (err) => { console.log(err) wx.hideLoading(); that.setData({ canvasHidden: true }) wx.showToast({ title: '图片保存失败', icon: 'none' }) } }) }, fail : function () { wx.showToast({ title: '图片绘制失败', icon: 'none' }) } }, this) }) } }) // console.log(that.data.imageUrl + '/inviteFriend.svg'); } 请各位大神看看是不是我的代码出问题了。 再说一下 我在其他手机上调试都是可以保存的(正常运行)。 下面是保存在iphone5上的空图片。长宽、大小都有,就是显示不出来。 [图片] 以上。
2018-08-15请问大神,如何获取小程序二维码的scene的参数值?我一旦扫码,就跳到了上线的小程序,没有办法测试啊?
二维码传回的参数多了其余参数返回的二维码多了一个random的参数在user_id后面 [图片] 这个是生成二维码的接口,为了防止缓存,我在后面添加了random做随机数 [图片] 后台也只接收了user_id这个参数作为scene返回。 [图片] {scene: "user_id%3D10105%3Frandom%3Dundefined"} "二维码参数" user_id=10105?random=undefined 我只想知道这个?random是从哪里来的,后台返回的参数也只是获取user_id,不可能将random也获取到啊。
2018-08-14src最好不要写死吧!莫名其妙的问题。我都是动态赋值的,虽然在js里也是写死的...
web-view分享时ios下webViewUrl参数丢失[图片] [图片] 点击分享时。ios下的webViewUrl中锚点#后面的参数获取不到。安卓才可以获取完整的 很急,在线等解决
2018-08-10你blur的时候 把键盘收下去不就是了
请问键盘挡住授权键怎么办?[图片] 求解
2018-07-25