导航

    Taro 社区

    Taro

    • 注册
    • 登录
    • 搜索
    • 版块
    • 最新
    • 话题
    • 热门
    • 群组
    1. 主页
    2. 231313680-959957
    2
    • 资料
    • 关注
    • 粉丝
    • 主题
    • 帖子
    • 最佳
    • 群组

    231313680-959957

    @231313680-959957

    0
    声望
    1
    帖子
    1230
    资料浏览
    0
    粉丝
    0
    关注
    注册时间 最后登录

    231313680-959957 关注

    231313680-959957 发布的帖子

    • H5的Canvas DrawImage一直报错

      在H5中使用chooseImage选择图片,然后显示到Canvas上

      Taro.chooseImage({
            count: 1,
            success: function (res) {
              let imgPath = res.tempFilePaths[0]
              Taro.getImageInfo({
                src: imgPath
              }).then(imgRes => {
                const ctx = Taro.createCanvasContext("customCanvas", this);
                ctx.drawImage(imgPath, 0, 0, 100, 100, 0, 0, 100, 100);
                ctx.draw(false)
              })
            }
          })
      

      报错信息:
      "Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(CSSImageValue or HTMLImageElement or SVGImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'"

      经过阅读taro-h5中createCanvasContext.js中的源码,drawImage调用的是canvas原生的方法,第一个参数就是image,但taro的Canvas.drawImage第一个参数是string,源码中没看到转换的地方,是我哪里使用有问题吗?

      本意是想通过Canvas压缩图片再上传,在H5中还有会更好的办法吗

      发布在 H5
      2
      231313680-959957