Являются ли большой SVG и маленький SVG, чья viewBox взрывает свое содержимое равными, в отношении производительности? - PullRequest
0 голосов
/ 28 апреля 2020

На моей странице есть потенциально большой, но довольно простой <svg> документ. Он содержит графические элементы моего веб-приложения.

Его width и height в настоящее время такие же большие, как видимая часть приложения. Я использую свойство viewBox для обработки прокрутки через значения min-x и min-y. Самое главное, я использую viewBox width и height значения, чтобы элегантно масштабировать его графические c элементы в один go. Существует демо , а также полное руководство о топи c.

Проблема в том, что это вызывает математические проблемы с плавающей запятой что я не очень способен справиться.

SVG - это не просто изображение. SVG - это документ - Амелия Беллами-Ройдс

Кажется, что <svg> похоже на <iframe> или сам html документ: они могут быть огромными, но браузер позаботится об автоматическом рендеринге только их видимых частей.

Кроме того, если вы проверяете его элементы, он показывает ограничивающий прямоугольник клиента, «переполняющий» документ <svg>.

image element overflowing its parent ">

Я не уверен, что это означает. Тем не менее, кажется, что браузер не делает различий с точки зрения производительности между одинаково сложным <svg>, один из которых является огромным, а другой - небольшим со свойством viewBox, которое взрывает его содержимое. Я прав в своем предположении?

В этом случае, несмотря на то, что мне нравится элегантность масштабирования всего с одним атрибутом, я был бы готов отказаться от этого, чтобы избежать решения математических задач с плавающей запятой.

...