Javascript 防止在操作画布时出现无响应

Javascript 防止在操作画布时出现无响应,javascript,canvas,Javascript,Canvas,我想把一个大的图像分割成一些小的图像,然后对这些小的图像执行一些数据操作。第二部分很好,因为我可以将数据传递给web worker,但是图像的分割使用画布(因此没有web worker),并使页面的其余部分在运行时没有响应 这其实不是什么问题,只是加载动画会暂停,使其变得毫无意义 在不冻结GUI的情况下执行图像分割画布操作的最佳方法是什么?只需使用getImageData,每次使用较小的矩形,您的情况就会更好 要想找到合适的尺寸需要一些时间,但先试试200x200和400x400 您甚至可以在处

我想把一个大的图像分割成一些小的图像,然后对这些小的图像执行一些数据操作。第二部分很好,因为我可以将数据传递给web worker,但是图像的分割使用画布(因此没有web worker),并使页面的其余部分在运行时没有响应

这其实不是什么问题,只是加载动画会暂停,使其变得毫无意义


在不冻结GUI的情况下执行图像分割画布操作的最佳方法是什么?

只需使用
getImageData
,每次使用较小的矩形,您的情况就会更好

要想找到合适的尺寸需要一些时间,但先试试200x200和400x400


您甚至可以在处理完图像的每5/10/15/20%后更新加载动画。

分割图像涉及哪些操作?可以将其拆分为一系列操作吗?这是一个for循环,它创建一个新画布,将原始图像的一部分绘制到新画布,然后将生成的dataURL推送到一个数组。它实质上是将图像分割成块,然后您可以创建一个异步队列。看一看这本书的第二部分。