我认为这个答案可能很有用:平移到特定的 X 和 Y 坐标和中心图像 svg-pan-zoom
例如,假设您要查找包含在 tspan 中的字符串(因为您没有提供更多详细信息),那么您可以有一个搜索框,当它发生变化时,会调用以下函数:
function searchTerm() {
let term = this.value;
var tspans = document.getElementsByTagName("tspan");
var found;
for (var i = 0; i < tspans.length; i++) {
if (tspans[i].innerHTML.includes(term)) {
found = tspans[i];
break;
}
}
let position = found.parentNode.parentNode.getAttribute("transform").split("translate(")[1].split(")")[0];
let posX = position.split(",")[0];
let posY = position.split(",")[1];
panZoom.zoom(1);
panZoom.pan({x:0,y:0});
var realZoom= panZoom.getSizes().realZoom;
panZoom.pan
({
x: -(posX*realZoom)+(panZoom.getSizes().width/2),
y: -(posY*realZoom)+(panZoom.getSizes().height/2)
});
}
如您所见,此代码是针对特定情况准备的,但您可以根据需要获得位置。