Я использую offscreen canvas
для динамического создания определенных изображений в зависимости от времени выполнения определенных переменных. Как только изображение было нарисовано на заднем экране, я хочу его получить и использовать в нескольких местах моего webapp.Самый эффективный способ повторного использования содержимого HTML-холста HTML5
Стратегия 1: использовать toDataURL()
методы закадрового холста, чтобы получить data:
URI, который содержит изображение, и которое я могу программно установить на нескольких img
элементах страницы, которые должны отображать его.
Стратегия 2: использовать getImageData()
метод закадровый холст, чтобы получить ImageData
экземпляр. Замените элементы img
на элементы canvas
и позвоните по телефону putImageData()
.
Какая стратегия более эффективна в работе с памятью? Что более «идиоматично»? Я пытаюсь избежать дублирования памяти, необходимой для хранения экземпляров отображаемых изображений. Другие предложения?
«Использовать его в нескольких местах моего webapp», вы имеете в виду несколько мест на одной и той же веб-странице или вы имеете в виду все сообщения? – markE
На той же странице (это все равно SPA). –