我正在尝试使用路径元素渲染两条 svg 线。
第一行宽度为 1px,并且很锐利
第二条线宽度为 2px,并且很模糊
两者的笔划宽度相同。
如何解决这个问题
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<path style="stroke-width:1;stroke:red;opacity:1;" d="M 300.5 250 L 300.5 300 "></path>
<path style=" stroke-width:1;stroke:red;opacity:1;" d="M 350 250 L 350 300 "></path>
</svg>
主要是 0.5 的偏移量使线条变得清晰。默认情况下,整数坐标映射到像素方块的交点。因此,宽度为 1 的水平/垂直线以像素行之间的边界为中心,并延伸到两侧像素的一半。 http://cairographics.org/FAQ/#sharp_lines
因此,要修复第二行,请将坐标添加 0.5 或使用样式shape-rendering: crispEdges
。注意清晰的边缘 http://www.w3.org/TR/SVG/painting.html#ShapeRenderingProperty防止抗锯齿,水平/垂直线清晰,但倾斜线看起来块状。
此外,笔划宽度 = 1 也不是有效的 CSS 语法。第一个示例描边宽度:1是正确的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)