使用stroke
svg 时,它会超出视图框。如何解决?
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 441 394.36">
<path fill="none" stroke="black" stroke-width="35" d="M329.9,1.5c60.56,0,109.6,49.03,109.6,109.47c0,109.47-109.6,171.8-219.06,281.27C110.97,282.77,1.5,220.44,1.5,110.97C1.5,50.53,50.54,1.5,110.97,1.5c54.73,0,82.1,27.37,109.47,82.1 C247.8,28.87,275.17,1.5,329.9,1.5z" />
</svg>
我想有必要
viewBox="-16 -16 474 433"
吗?很多情况下,使用“poke”方法无法捕获必要的参数
viewBox
在这种情况下,JS方法会有所帮助
getBBox()
将结果值代入
viewBox
但是它
getBBox()
显示了描述svg图形的矩形的参数而不考虑stroke-wifth
我们有它34
第二点 - 使用宽线,外部(线的一半)将超出 SVG 画布(红色边框),因此必须考虑这一点并相应更改参数
viewBox
这是根据计算
getBBox()
viewBox="1.5 1.5 438 390.74"
添加34
(每边半行)它变成了
viewBox="-15.5 -15.5 472 424.74