gpt4 book ai didi

javascript - SVG getTotalLength() 不会返回非缩放笔划的正确大小 - 获取 SVG 比例

转载 作者:行者123 更新时间:2023-11-28 04:34:03 25 4
gpt4 key购买 nike

我使用 javascript 获取路径长度并将其中一半应用于 Stroke-DashArray。我的问题是,我使用 vector-effect="non-scaling-lines" ,这样无论比例如何,它总是保持 lines-width:2px; 的非- 缩放似乎会影响笔划属性的每个部分,包括 DashArray,因此我需要获取 svg 的比例,然后缩放 path.getTotalLength();

有没有办法使用 javascript 获取 SVG 计算比例来用作路径长度的乘数?

我做了一个codepen.io来演示这个问题。只需调整视口(viewport)大小即可看到笔划变化。

最佳答案

只是想让更多人关注 Sam 上面的评论/答案,这对我有用!

path.getBoundingClientRect().width/path.getBBox().width 将返回一个比例数字。

然后,您可以使用 path.getTotalLength() * scale; 将比例乘以路径长度;

关于javascript - SVG getTotalLength() 不会返回非缩放笔划的正确大小 - 获取 SVG 比例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44389668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com