Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Моя страница Раскраска (https://javascript.ru/forum/project/60784-moya-stranica-raskraska.html)

clecar 11.01.2018 08:12

Гиф, сложновато. А идею с одной картинкой png, опробую. Забавно.

clecar 11.01.2018 11:11

Тянет только до 800 на 32000px, в моей раскраске это 40 кадров. Но к этому ещё вернусь, не экспериментировал с размерами кадра.

Белый шум 11.01.2018 11:50

Можно ещё попробовать apng (анимированный png) - https://gist.github.com/yurydelendik...63bf9b0631b820

"Каждый кадр только хранит отличия от предыдущего (на манер GIF)." - https://ru.wikipedia.org/wiki/APNG - идеально для вашей задачи, файл будет весить меньше чем все кадры в столбик.

Только поддержка браузерами не очень: https://caniuse.com/#search=apng

Цитата:

Limits of toDataURL() for iOS:
- The maximum size for decoded GIF, PNG, and TIFF images is 3 megapixels for devices with less than 256 MB RAM and 5 megapixels for devices with greater or equal than 256 MB RAM.
- The maximum size for a canvas element is 3 megapixels for devices with less than 256 MB RAM and 5 megapixels for devices with greater or equal than 256 MB RAM.
- https://caniuse.com/#feat=canvas (вкладка "Known issues"). Для других систем/браузеров лимиты не указаны.

clecar 11.01.2018 12:43

Так дело не в весе пока а в размере по стороне. А мой файл из 40 кадров получился всего 818 кб. Спасибо, я же в данном случае могу гораздо круче apng, и благодаря вашему выражению "Каждый кадр только хранит отличия от предыдущего (на манер GIF).", понял а зачем я пытаюсь сохранять кадры, можно ведь отдельно только отличия на том же полотне. Так что приступаю к новой программе, где это и попытаюсь воплотить.

Белый шум 11.01.2018 13:00

Если вам свой формат файла делать, то можно ещё круче - только сами действия записывать:
1) ведро с цветом C1 применить к точке X1,Y1
2) линия цветом C2 и шириной R2 по точкам X2,Y2 - X3,Y3 - X4,Y4
и т.д.

clecar 11.01.2018 13:44

Да именно это мне и пришло в голову, когда прочитал ваш ответ. Ведь в одном пикселе 4 числа по 255 значений. Шифруешь все действия в пиксели файла PNG, а при загрузке обратно в программу дешифруешь. Я поставил вам плюс за участие и помощь.

Fonnizwl 23.02.2018 18:17

Совет не дам. А мнение скажу, мне понравился сайт, вот только озвучка цвета напугала.


Часовой пояс GMT +3, время: 17:35.