Веб-работники и Canvas
-
16-09-2019 - |
Вопрос
Разрешен ли веб-работникам доступ к объекту холста?
Решение
Небольшое обновление, так как вопросу уже больше полугода:
В Chrome/Chromium 6 теперь вы можете отправить объект ImageData холста веб-работнику, позволить веб-работнику внести изменения в объект, а затем записать его обратно на холст, используя положитьImageData(..).
Google Хромабраш делает это так, исходный код можно найти здесь:
Обновлять:
Последние версии Opera (10.70) и Firefox (4.0b1) также поддерживают передачу объектов ImageData веб-работнику.
Обновление 2017 года:
Актуальные ссылки с Github (проще найти нужные файлы из Chromabrush
):
Другие советы
Нет.
Спецификация postMessage была обновлена несколько месяцев назад, чтобы позволить вам публиковать объекты ImageData, но пока никто не реализовал такое поведение (мы все к этому приближаемся).Проблема с самим холстом заключается в том, что это элемент DOM и поэтому он не работает в воркере (нет DOM).
Недавно этот вопрос был поднят в списках рассылки Whatwg или веб-приложений, поэтому я подозреваю, что мы начнем искать возможность предоставления API-интерфейса, подобного CanvasRenderingContext2D, в рабочих процессах.