0

我是 SVG 新手。我有一个 svg 图像,我已经为<g>标签应用了一个变换矩阵。现在我想计算<g>标签的宽度和高度。在页面加载时,我可以使用 getBBox() 或 getBoundingClientRec() 函数计算宽度和高度。但是当我调整窗口大小时,我正在更改矩阵值,在更新矩阵值之前,我如何计算<g>标签的宽度和高度。

-- getBBox() 和 getBoundingClientRec() 根据矩阵值返回宽度和高度。

示例:在页面加载时:

<g id="xyz" transform="matrix(1,0,0,1,10,10)"></g>

调整窗口大小时,我正在调用一个计算矩阵值的方法。 注意:矩阵值的计算尚未更新 我需要在调整大小时将图像居中到浏览器窗口。我减去窗口宽度和图像宽度除以 2,并将该值应用于矩阵。即,“x”值。示例:新矩阵值为 [1.2,0,0,1.2,x,10]

对于居中地图,我需要通过使用计算出的矩阵值来了解宽度和高度,<g>即 [1.2,0,0,1.2,x,10]

4

1 回答 1

1

用另一个 > 包裹转换后的组<g并调用getBBox()它。

但是,为什么不描述您要解决的原始问题呢?由于您是 SVG 新手,因此您有可能以错误的方式解决问题。也许我们可以提出一个比尝试自己操作矩阵更好的解决方案。

于 2016-02-24T13:09:09.447 回答