Скажем, у меня есть элемент canvas
, и мне нужно повернуть изображение на холсте в PNG или JPEG. Конечно, я могу просто использовать canvas.toDataURL
, но проблема в том, что мне нужно сделать это двадцать раз в секунду, а canvas.toDataURL
- очень медленно - настолько медленный, что процесс захвата пропускает кадры, потому что браузер занят преобразованием в PNG.
Моя идея - вызвать context.getImageData(...)
, который, очевидно, намного быстрее, и отправить возвращенный CanvasPixelArray
веб-рабочему, который затем обработает необработанные данные изображения в PNG или JPEG. Проблема в том, что я не могу получить доступ к native canvas.toDataURL
из веб-рабочего, поэтому вместо этого мне нужно прибегнуть к чистому JavaScript. Я попытался найти библиотеки, предназначенные для Node.js, но те написаны на С++. Существуют ли библиотеки в чистом JavaScript, которые будут передавать необработанные данные изображения в PNG или JPEG?