我在 svg 标签中有一张图片。 当我更改图像的宽度(或高度)时,高度(或宽度)也会更改以保持比例。 但我无法获取高度(或宽度)的新值。
这里是一个例子: https://plnkr.co/edit/NrovrUKAv8KRGLPdjDpG?p=preview
我们可以看到,虽然宽度和高度都减小了,但只有宽度值发生了变化。 我尝试使用 d3js 获取高度,但值仍然相同。
d3.select("图像").attr("高度")
最佳答案
虽然图像的高度似乎在下降,但实际上不仅仅是它通过更改宽度* 219
来自动调整到框架中的传播方式。通过一个简单的示例来了解当尝试将 800*600 图像设置为 1920*768 屏幕中的壁纸
时会发生什么情况。检查下图以查看您的图像实际占用了多少屏幕。
如果您确实想调整图片大小,那么您还需要相应地调整高度并重新计算这两个值:
var height = parseInt(d3.select("image").attr("height"));
d3.select("image").attr("height", height / 2);
这是一个example .
关于javascript - 调整大小后获取svg图像的实际大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37307868/