как заменить getImageData & putImageData для лучшей производительности?

89
9

getImageData очень плохо для производительности. У меня нет файла png или jpg. Поэтому я делаю изображение во время загрузки моей программы. Я разрабатываю приложение, используя дисплей сетчатки iPhone. И мне нужна ваша помощь :(

Мне нужно сделать изображение во время выполнения, в котором я могу повторно использовать переменную какого-то типа.

На экране сетчатки использование холста кеша сделает изображение слишком пиксельным или слишком большим. Если вы не знаете, как это исправить?

var x = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); //width of screen
var y = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); // height of screen

if (x === 414 && y === 736) {
imgData = ctx.getImageData(0,0,3*x,3*365*Yf);
} else {
imgData = ctx.getImageData(0,0,2*x,2*365*Yf);
}

ctx.clearRect(0, 0, x, 365 * Yf); // size of Image, retina display quality
ctx.putImageData(imgData, 0, 0);

спросил(а) 2021-01-25T15:49:11+03:00 4 месяца, 4 недели назад
1
Решение
117

Использование drawImage(canvas) намного быстрее, чем использование putImageData

Однако я не знаю более быстрый метод getImageData.

ответил(а) 2021-01-25T15:49:11+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема