使用 Web Worker 从文件中获取图像数据
是否可以从 Web Worker 中的文件中解码图像数据,以便我可以将其传递到主线程并使用 putImageData。这可能比仅仅调用drawImage要快。
Is it possible to decode the image data from a file in a Web Worker so that I can pass it to the main thread and use putImageData. This is presumably faster than just calling drawImage.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的。 WebWorker API 规范允许您简单地向其发送消息 ImageData 和 ArrayView。然而,目前并非所有实现都启用了此功能。您可能想看看 这段来自 JSConf'11 的视频触及这个话题。
也就是说,putImageData 比 drawImage 慢得多,至少当我今年早些时候测试它们时是这样。有关详细信息,请参阅此 stackoverflow 答案,尤其是 此 jsPerf 测试用例 比较 putImageData、getImageData、toDataURL 和 drawImage。
Yes it is. The WebWorker API specification allows you to simply postMessage ImageData and ArrayViews to and from it. However, not all implementations currently have this enabled afaik. You may want to have a look at this video from JSConf'11 that also touches this topic.
That beeing said, putImageData is much slower than drawImage, at least when I tested them earlier this year. See this stackoverflow answer for details, especially this jsPerf testcase comparing putImageData, getImageData, toDataURL and drawImage.