Итак Я нашел скрипт , который, кажется, делает именно это, но он увеличивает <g>
, который оборачивает все содержимое SVG, применяя к нему матрицу преобразования (хотя он не увеличиваетОпера из-за нюха).Заворачивать все лентименты в <g>
не вариант, потому что я делаю просмотрщик изображений, и могут загружаться разные файлы.
Установка transform="matrix(...)"
в корне <svg>
не дает никакого эффекта.Установка currentScale
на <svg>
увеличивает изображение, но делает это в верхнем левом углу, а не от положения мыши или от центра изображения.Функциональность панорамирования также не работает, так как кажется невозможным перетаскивать весь элемент <svg>
.
Управление атрибутом viewBox
кажется полезным, но действительно сложно определить необходимые значения для него.1015 *
Так можете ли вы придумать способ увеличения и панорамирования в таком контексте?
Демонстрацию можно загрузить здесь .Требуется, чтобы Opera была установлена на вашем компьютере.