Это происходит потому, что Safari оптимизирует масштаб и выполняет преобразование на графическом процессоре. Вы хотите остановить Safari и заставить его повторно выполнить рендеринг на ЦП (это менее энергоэффективно).
Функция, которую вы хотите изменить, скорее всего, эта внутри panzoom.js
function applyTransform(transform) {
svgElement.setAttribute('transform', 'matrix(' +
transform.scale + ' 0 0 ' +
transform.scale + ' ' +
transform.x + ' ' + transform.y + ')')
}
Вы хотите добавить еще один атрибут здесь, чтобы запустить Safari для повторного рендеринга. Возможно, вам придется поэкспериментировать с добавлением атрибутов, таких как enable-background: new или shape-render: geometryPrecision, чтобы увидеть, что может работать. Примечание. Возможно, вам придется много экспериментировать, и нет никаких гарантий, что все, что работает, будет работать.