gpt4 book ai didi

SVG:内部模式的非缩放笔划不起作用?

转载 作者:行者123 更新时间:2023-12-04 16:11:13 24 4
gpt4 key购买 nike

在模式中使用 vector-effect="non-scaling-stroke"时,我在 Firefox 或 Chrome 中没有得到预期的结果,尽管 Opera 按预期工作......

例子:

<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" height="100px" width="1000px">
<defs>
<pattern id="ticks" viewBox="0 0 12 4" preserveAspectRatio="none" height="100%" width="10%">
<path stroke="#000" vector-effect="non-scaling-stroke" d="M 0 0 L 0 4 M 1 0 L 1 1 M 2 0 L 2 1 M 3 0 L 3 2 M 4 0 L 4 1 M 5 0 L 5 1 M 6 0 L 6 3 M 7 0 L 7 1 M 8 0 L 8 1 M 9 0 L 9 2 M 10 0 L 10 1 M 11 0 L 11 1" />
</pattern>
</defs>
<rect width="100%" height="100%" fill="url(#ticks)" />

Screenshot of results in Firefox, Chrome and Opera

我做错了什么,或者这是 WebKit 和 Gecko 中的错误?如果这是一个错误,有人知道解决方法吗?

谢谢你的帮助。

最佳答案

我没有 Opera 来测试这个解决方案,但它在 Chrome 和 Firefox 上似乎有预期的结果。

@galdre 是对的。您需要定义 stroke-width (下面分配了 0.1 的值)。此外,您还缺少一个结束语 </svg> :

<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" height="100px" width="1000px">
<defs>
<pattern id="ticks" viewBox="0 0 12 4" preserveAspectRatio="none" height="100%" width="10%">
<path stroke-width="0.1" stroke="#000" vector-effect="non-scaling-stroke" d="M 0 0 L 0 4 M 1 0 L 1 1 M 2 0 L 2 1 M 3 0 L 3 2 M 4 0 L 4 1 M 5 0 L 5 1 M 6 0 L 6 3 M 7 0 L 7 1 M 8 0 L 8 1 M 9 0 L 9 2 M 10 0 L 10 1 M 11 0 L 11 1" />
</pattern>
</defs>
<rect width="100%" height="100%" fill="url(#ticks)" />
</svg>

关于SVG:内部模式的非缩放笔划不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15582157/

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