如何更改 viewBox 以使 svg 中的元素居中

Posted

技术标签:

【中文标题】如何更改 viewBox 以使 svg 中的元素居中【英文标题】:How to change viewBox to center an element in svg 【发布时间】:2017-02-28 23:36:51 【问题描述】:

我有一个包含一堆圆圈的 svg 地图,单击一个圆圈我想让圆圈成为画布的中心。我正在使用 RaphaelJS 来处理 svg。

我试过paper.setViewBox(width / 2 - cx, height / 2 - cy, width, height, true),其中 cxxy 是我的 svg 文件中选定圆的坐标,但它不起作用。

【问题讨论】:

你能分享一个工作的例子吗? 我已经在尝试自己找一个了。 【参考方案1】:

你的计算在我看来是错误的。我希望它是:

paper.setViewBox(cx - width / 2, cy - height / 2, width, height, true)

【讨论】:

cx - (settings.vb.width / 2), cy - (settings.vb.height / 2)

以上是关于如何更改 viewBox 以使 svg 中的元素居中的主要内容,如果未能解决你的问题,请参考以下文章

使用 CSS 更改 SVG Viewbox 大小

d3js:Svg元素在更改窗口大小时未调整大小

固定 SVG 中的笔画宽度

div背景图片拉伸的问题(SVG中的viewBox含义)

怎么用javascript 动态修改svg的 viewbox属性?

如何确定 SVG 元素的字体大小?