Показать сообщение отдельно
  #1 (permalink)  
Старый 28.01.2021, 09:34
Аспирант
Отправить личное сообщение для RX200 Посмотреть профиль Найти все сообщения от RX200
 
Регистрация: 06.02.2011
Сообщений: 54

Оптимизация самый быстрый вывод текста
Есть массив с координатами, обновляется движением мыши, то есть двигается на экране мышью. вобщем суть в том что на экран выводятся текстовые поля с координатами, за раз в крайних случаях 100 - 200 тысяч текстовых полей. причем текст с фоном, пробовал три варианта, самым медленным был SVG, далее HTML(span), и самый быстрый Canvas, но всеравно тормозит, какой самый быстрый способ вывода текстовых полей вы знаете? Текстовые поля с фоном, полей порядка 100 - 200 тысяч, каждое поле при каждом смещении, меняет свой текст и координаты.
Вот пример части самого быстрого кода.
// arr_c_g[i] = [x, y, text]; arr_c_g.length примерно 100000
// width_t_2 = width_t / 2;
// height_t_2 = height_t + 2;
let out_text = () => {
	context.clearRect(0, 0, width, height);
	context.fillStyle = "#fff";
	for(let i = 0; i < arr_c_g.length; i++)context.fillRect(arr_c_g[i][0] - width_t_2, arr_c_g[i][1] - height_t, width_t, height_t_2);// Фон
	context.fillStyle = "#000";
	for(let i = 0; i < arr_c_g.length; i++)context.fillText(arr_c_g[i][2], arr_c_g[i][0], arr_c_g[i][1]);// текст
};

Есть ли чтонибудь быстрее?
Ответить с цитированием