Ошибка загрузки SVG

Release name - wb-2304
Release suite - stable
При загрузке svg файла возникает ошибка. Браузер: Chrome, Edge, яндекс.
Файл с рисунком Vent|690x487 в svg

Поддерживаю вопрос, столкнулся с аналогичным
image

SVG (размер 1461 кБ) загружается, привязка производится, если игнорировать сообщение об ошибке все даже работает некоторое время, но после SVG из списка исчезает!

Повторная загрузка SVG и вставка сгенерированного JSON не дает результата - привязка не работает (((

Хотел было загрузить SVG но форум не дает - говорит ограничение на размер файла (4,9 мб, при том что файл 1,4 мб) 130 - WBIO.svg — Яндекс Диск

localstorage = 0

Какой максимальный размер SVG файла?
Техподержка подключитесь, тут что-то явно системное.

1 лайк

а какая ошибка?

Если я ничего не путаю, оно зависит от сжатого размера всех SVG, поэтому заранее нельзя предугадать.

Сообщение об ошибке же вам всё написало - все SVG в сумме не поместились, надо их уменьшать.

Евгений спасибо за ответ, но яснее пока не стало. На сколько нужно уменьшать размер файла/всех файлов SVG? Можно более подробно осветить эту тему на wiki, не хотелось бы день потратить на оптимизацию и после понять что шкурка выделки не стоит.

SVG файлы модулей брались из описания устройств с вашего сайта, предполагал что как раз для таких целей как в выше представленных SVG файлах.

Требования к изображению

Основой для SVG-панели служит svg-изображение. Если готового изображения нет, то его можно нарисовать в любом векторном редакторе, например, в свободном Inkscape.

Вы можете выводить информацию в любые текстовые элементы и настраивать взаимодействия с любыми фигурами и текстом.

Ограничения:

  • Нельзя взаимодействовать с прямоугольником. Если это необходимо — преобразуйте его в кривые (оконтурите).
  • Редактор SVG-панели игнорирует группировку. Поэтому если нужно настроить взаимодействие с составным элементом, то преобразуйте его в одну фигуру, состоящую из контуров.
  • Внутри svg-файла тег content не должен содержать другие теги. Если вы загрузили файл на контроллер, сделали привязку, скачали этот файл на компьютер и он не открылся в редакторе, окройте svg-файл текстовым редактором и удалите содержимое тега content. После этого вы сможете редактировать файл в svg-редакторе.

Изображение может быть любого размера и с любым количеством элементов.

Чего не так делаем то?

Если ваш файл в Inkscape сохранить как “Оптимизированный SVG”, то он загружается без ошибки. Я еще попробовал открыть ваш файл в разных онлайн вьюверах - на некоторых не открывается, вываливается ошибка. Может, с файлом что-то не то?

Сохранил как “Оптимизированный SVG”. При загрузке в контроллер ошибка

Попробуйте мой:
Файл с рисунком Vent

Спасибо, работает. Подскажите, что сделали???

Установил Inkscape, взял ваш файл, сохранил как “Оптимизированный SVG”. Больше ничего.

Хм… Интересно. @somebody Можете у себя тоже проверить?

оптимизировал, размер составил 775кб (ужалось все в два раза), но ошибка осталась.

покажите пожалуйста ваши настройки оптимизации, я делаю по умолчанию оптимизацию - результат все тот же ошибка.

В чем секрет.

image

image

image

1 лайк

проверил, думаю вопрос в суммарном размере SVG

  1. Если дополнительно к тестовым по умолчанию SVG добавляю свой оптимизированный SVG (775кб) - возникает ошибка.
  2. Удаляю дефолтные SVG загружаю свой оптимизированный - ошибки нет.

Возникает вопрос:

  1. Какой максимально допустимый размер файла SVG?
  2. Какой максимально допустимый суммарный размер SVG?

Судя по тексту сообщения об ошибке, проблема в том что кончается место в localStorage браузера. По умолчанию для хрома это вроде бы 10 Мб.

upd: Progresif Web uygulamalarında hata ayıklama  |  Chrome DevTools  |  Chrome for Developers

спасибо что подключились к обсуждению.

Браузер - яндекс, выше приводил скрин что localstorage пуст/
Попробывал в chrom - аналогичная ошибка

виновато действительно ограничение localStorage. Все SVG лежат в одном файле, этот файл загружается через MQTT, стандартная библиотека MQTT (зачем-то) складывает при получении все сообщения в localStorage. Чтобы починить надо или хранить файлы по-другому, или сервис переписывать сильно, или в недры стандартной mqtt-библиотеки лезть. В общем мы это сделаем, но не завтра.

спасибо! будем ждать