收藏
回答

华为META9机器canvas.drawImage后canvasToTemp图片大小不对?

机型:HUAWEI META9

机型:HUAWEI META9 MHA-AL00

微信版本号:7.0.7

系统版本号:8.0.0

能复现问题的代码片段:

wx.getImageInfo({
        src: imagePath,
        success: function (res) {
 
          // 生成指定宽度的图片
          that.setData({
            canvasWidth: canvasWidth,
            canvasHeight: canvasHeight 
          })
          var ctx = wx.createCanvasContext('tmpImage');
          ctx.drawImage(imagePath, 0, 0, canvasWidth, canvasHeight );
          ctx.draw(false, function() {
            //保存临时文件
            wx.canvasToTempFilePath({
              canvasId: 'tmpImage',
              fileType: 'jpg',
              success: function (res) {
                console.log(res.tempFilePath)
              },
              fail: function (error) {
                console.log(error)
                reject(error)
              }
            })
          })
        }
      }) 
    })


回答关注问题邀请回答
收藏

2 个回答

  • 如何
    如何
    2019-11-28

    原因是:pixelRatio的问题,需要转换下像素,例如图片想要缩放为:500,则实际转换到设备上的像素为=500 / pixelRatio

    2019-11-28
    有用
    回复
  • 是小白啊
    是小白啊
    2019-11-28

    麻烦提供能复现问题的代码片段https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2019-11-28
    有用
    回复 1
    • 如何
      如何
      2019-11-28
      我知道是啥原因了,是机器的pixelRatio的问题,已经解决了,还是谢谢你
      2019-11-28
      回复
登录 后发表内容
问题标签