我想知道是否有一种方法可以在imagedata
不绘制到画布的情况下将图像转换为反之亦然。
我知道这些方法getImageData()
,toDataURL()
可以用来复制画布,但如果我更愿意采用imc.src
路径并将其直接转换为imagedata
. 或者imagedata
直接转换为 aDataURL
而不将其传递给画布。
我想知道是否有一种方法可以在imagedata
不绘制到画布的情况下将图像转换为反之亦然。
我知道这些方法getImageData()
,toDataURL()
可以用来复制画布,但如果我更愿意采用imc.src
路径并将其直接转换为imagedata
. 或者imagedata
直接转换为 aDataURL
而不将其传递给画布。
我认为这个问题的答案是否定的。如果您查看ImageData 的文档,您会发现它与 canvas 元素非常直接相关,并且它的所有属性都是只读的。另外,如果你进入控制台尝试一下new ImageData
,你会发现不允许你自己从头构造一个,并且函数内容是本机代码。
如果有人找到一种方法来做到这一点,我会印象深刻——你永远不知道你不知道什么。但是由于规范明确表示它不应该是可能的,并且显然已经努力防止它发生,我想说这两种方式都可能不是一个好赌注。
对于您面临的问题,也许还有另一种解决方法。如果您重新措辞您的问题以包括对您的问题的更广泛的看法,我们中的一些人可能会提出可能的替代解决方案,正如您在第一条评论中开始看到的那样。