我想知道是否有办法将图像转换为imagedata
,反之亦然,而不是绘制到画布。
我知道可以使用方法getImageData()
和toDataURL()
来复制画布,但如果我更喜欢采用imc.src
路径并将其直接转换为{{1} }。或者将imagedata
直接转换为imagedata
,而不将其传递给画布。
答案 0 :(得分:1)
我认为这个问题的答案是否定的。如果你查看docs for ImageData,你会发现它与canvas元素直接相关,并且它的所有属性都是只读的。另外,如果你进入控制台并尝试new ImageData
,你会发现你不允许自己从头开始构建一个,并且函数内容是本机代码。
如果有人找到了这样做的方法,我会非常感动 - 你永远不会知道你不知道的。但由于规范明确指出它不应该是可能的,并且显然已经做出努力防止它发生,我会说这可能不是一个好赌注。
也许您面临的问题还有另一种解决方法。如果您重新提出问题以包含更广泛的问题视图,我们中的一些人可能会建议可能的备用解决方案,正如您在第一条评论中所看到的那样。