收藏
回答

createOffscreenCanvas 如何使用?canvasToTempFilePath报错

1、使用离屏 定义如下

const canvas = wx.createOffscreenCanvas({
	type: '2d',
	width: canvasWidth,
	height: canvasHeight
})
const canvasCtx = canvas.getContext('2d')


2、顺利生成

let res = canvasCtx.createImageData(canvasWidth,canvasHeight)

(一点也不顺利的 结果 )

res 的 值{data: Uint8ClampedArray(1216500), width: 375, height: 811, dataUnion: Uint8ClampedArray(1216500)}


3、问题1 我要怎么用这个数据呢?

4、也无法存下图片,这一步报错

wx.canvasToTempFilePath({
	x: 0,
	y: 0,
	width: canvasWidth,
	height: canvasHeight,
	destWidth: canvasWidth,
	destHeight: canvasHeight,
	canvas: canvas,
	success(res) {
	console.log(res.tempFilePath)
   }
  })


wx.canvasToTempFilePath 这一步的报错信息如下

VM282 WAService.js:2 TypeError: 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)'



最后一次编辑于  2021-06-09
回答关注问题邀请回答
收藏

7 个回答

  • 朱高
    朱高
    2022-05-18

    切换一下基础库就行了。我真是服了,排查了一天,最后发现是基础库问题。

    开始用的是 2.18.1,不管用什么样的姿势,都是报这个错。

    后面换成 2.20.3,好了。

    再切回 2.18.1,又报错。

    可以断定是基础库的问题了。


    2022-05-18
    有用 1
    回复
  • yemin
    yemin
    2023-08-15

    是不是canvasToTempFilePath 不支持createOffscreenCanvas


    {"errMsg": "canvasToTempFilePath:fail invalid viewId"}





    2023-08-15
    有用
    回复
  • 夏味
    夏味
    2023-05-29

    同问

    2023-05-29
    有用
    回复
  • 阿瓦隆
    阿瓦隆
    2022-06-06

    2022年6月6日,这个问题存在。

    2022-06-06
    有用
    回复
  • WEI
    WEI
    2022-04-01

    2022/4/1 这个问题还存在

    2022-04-01
    有用
    回复
  • Cjiang
    Cjiang
    2021-06-09

    请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2021-06-09
    有用
    回复 2
  • 那只知更鸟
    那只知更鸟
    2021-06-09

    麻烦答主注意下 报错 是 在wx.canvasToTempFilePath 的时候。不是 之前。

    2021-06-09
    有用
    回复 1
    • akki
      akki
      2021-11-02
      无论如何都会发生这种情况。 我怀疑他们甚至在发布新版本的框架并宣布修复之前测试代码
      2021-11-02
      回复
登录 后发表内容