收藏
回答

小程序生成海报失败

问题模块 框架类型 问题类型 操作系统版本 手机型号 微信版本
客户端 小程序 Bug 安卓7.1.1 锤子坚果pro 7.0.4

- 当前 Bug 的表现(可附上截图)


本地工具调试可以出现个人头像生成海报 但是手机端则无法显示 已经在开发配置了  https://wx.qlogo.cn  这个域名 但是就是不显示用户头像

- 预期表现


- 复现路径


- 提供一个最简复现 Demo


onLoad: function(options) {

var that = this;

var wx_uid = wx.getStorageSync("wx_uid") || 0;

wx.request({

url: app.globalData.web_url + 'api/index/userinfo',

method: 'POST',

data: {

uid: wx_uid

},

dataType: 'json',

success: function(res) {

console.log(res.data.data);

that.setData({

user: res.data.data,

});


//start

var ctx = wx.createCanvasContext('canvaspost'); //创建并返回绘图上下文context对象。

ctx.clearRect(0, 0, 750 * rpx, 1624 * rpx)

ctx.drawImage('/images/posterbg.png', 0, 0, 750 * rpx, 1624 * rpx);


ctx.save();

ctx.beginPath() //开始创建一个路径

ctx.arc(351 * rpx, 685 * rpx, 225 * rpx, 0, 2 * Math.PI, false) //画一个圆形裁剪区域

ctx.stroke();

ctx.clip() //裁剪

ctx.drawImage(res.data.data.headimgurl, 126 * rpx, 460 * rpx, 450 * rpx, 450 * rpx);

ctx.restore() //恢复之前保存的绘图上下文

ctx.setTextAlign("center");

ctx.setFillStyle("#5f1985");

ctx.setFontSize(68 * rpx);

ctx.fillText("我是" + res.data.data.nickname, 375 * rpx, 1140 * rpx);


ctx.setFillStyle('#5f1985')

ctx.fillRect(75 * rpx, 1160 * rpx, 600 * rpx, 2 * rpx)


ctx.setTextAlign("center");

ctx.setFillStyle("#5f1985");

ctx.setFontSize(68 * rpx);

ctx.fillText("支持沪港善心百万行", 375 * rpx, 1230 * rpx);


ctx.setFillStyle('#5f1985')

ctx.fillRect(75 * rpx, 1250 * rpx, 600 * rpx, 2 * rpx)


ctx.setTextAlign("center");

ctx.setFillStyle("#5f1985");

ctx.setFontSize(68 * rpx);

ctx.fillText("2019.06.22", 375 * rpx, 1320 * rpx);


ctx.drawImage('/images/code2.png', 100 * rpx, 1415 * rpx, 175 * rpx, 175 * rpx);


ctx.setTextAlign("left");

ctx.setFillStyle("#fff");

ctx.setFontSize(40 * rpx);

ctx.fillText("请扫码支持我!", 310 * rpx, 1460 * rpx);


ctx.setTextAlign("left");

ctx.setFillStyle("#fff");

ctx.setFontSize(40 * rpx);

ctx.fillText("黄浦江边挑战6Km!", 310 * rpx, 1520 * rpx);


ctx.setTextAlign("left");

ctx.setFillStyle("#fff");

ctx.setFontSize(40 * rpx);

ctx.fillText("造福社群,共享善举.", 310 * rpx, 1580 * rpx);


ctx.draw()

}

})





},

saveImage: function(e) {

wx.canvasToTempFilePath({

canvasId: 'canvaspost',

success: function(res) {

wx.saveImageToPhotosAlbum({

filePath: res.tempFilePath,

success(result) {

wx.showToast({

title: '图片保存成功',

icon: 'success',

duration: 2000

})

}

})

}

})

},


最后一次编辑于  05-05  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

1 个回答

  • 社区技术运营专员-白柿子
    社区技术运营专员-白柿子
    05-05

    appid麻烦提供下

    05-05
    赞同
    回复 4
    • C c
      C c
      05-05

      wxc0bd41958a4afbe5

      05-05
      回复
    • 社区技术运营专员-白柿子
      社区技术运营专员-白柿子
      05-05回复C c

      仅该机型不行吗?

      05-05
      回复
    • C c
      C c
      05-05回复社区技术运营专员-白柿子

      不是 是测试的手机都不行

      05-05
      回复
    • C c
      C c
      05-05回复社区技术运营专员-白柿子

      解决了 是没有把线上头像本地的路径 缺少了wx.getImageInfo 这个方法 导致不能生成本地头像

      05-05
      回复