Показать сообщение отдельно
  #1 (permalink)  
Старый 29.02.2020, 20:35
Интересующийся
Отправить личное сообщение для AndrewKokorev Посмотреть профиль Найти все сообщения от AndrewKokorev
 
Регистрация: 25.02.2020
Сообщений: 19

Canvas. Качество картинки при сохранении.
Привет, парни.

Канвасу задаю небольшие размеры по типу 50 на 50 допустим и растягиваю в CSS, чтобы получить большие пиксели. CSS свойство image-rendering: pixelated убирает размытие, которое появляется из-за того что канвас растянут.

Уже 3 недели делаю свою пиксельную рисовалку для анимации и вообще не подумал как я буду сохранять потом всё это. И сегодня столкнулся с проблемой то что метод canvas.toDataURL() по сути сохраняет картинку просто в пикселях, которые соответственно равны заданному размеру канваса, то бишь 50 ширина и 50 высота сохранённой картинки. Соответственно понимаете что будет, если её растянуть - то же мыло что и было бы на канвасе без image-rendering: pixelated.

Думал обмануть систему и выиграть так в производительности: много слоёв, кадров, которые будут постоянно сохраняются и рендерятся , там на один массив Uint8ClampedArray имеет over 10k значений. И кароче знатно я объ... походу

Есть какие-то способы сохранить картинку с нормальным разрешением?

Если нет, то придётся перелапачивать всё алгоритмы инструментов, подстраивание размеров канваса под родителя и возможно сохранения слоёв делать через toDataURL() т.к он как понял более производительный. Кароче жопа-па))Хэлп

Последний раз редактировалось AndrewKokorev, 29.02.2020 в 20:38.
Ответить с цитированием