【问题标题】:get actual height of svg bezier curved path获取 svg 贝塞尔曲线路径的实际高度
【发布时间】:2013-12-27 00:44:25
【问题描述】:

这比 SVG 问题更像是一个贝塞尔问题,但这里是……

给出以下代码:

<svg xmlns="http://www.w3.org/2000/svg" baseProfile="full" viewBox="0 0 400 400" baseProfile="full">
    <path d="M0,0 C20,400 30,200 50,100" fill="#FF0000" stroke="#000000"/>
</svg>

使用 [path].getBBox() 返回高度 400,因为曲线的第一个控制点位于 400 y,这是有道理的(ish)。

但我真正需要的是渲染时对象的实际高度,而不是包含其绘图中使用的所有点的框。

我假设我只需要自己弄清楚吗?如果是这样的话,有没有人对去哪里找到这样的数学东西有任何建议?我做了一些谷歌搜索,但我并没有真正想出任何东西(很可能我没有正确地表达这个问题,在这方面的一些帮助也会非常好)。

【问题讨论】:

    标签: svg bezier


    【解决方案1】:

    你做得对,它是WebKit bug。如果你在 Firefox 甚至 Internet Explorer 上try getBBox,那很好。

    如果您需要解决方法,请查看implementation done for SVG-edit

    【讨论】:

    • 谢谢,太棒了。看起来他们已经为这个修复工作了 2 年,但没有任何解决方案。至少修复有 cmets,其中包括一个很好的数学答案的链接。
    猜你喜欢
    • 2021-09-10
    • 1970-01-01
    • 2011-02-26
    • 2017-11-18
    • 1970-01-01
    • 1970-01-01
    • 2016-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多