在SVG或raphaeljs中制作1px重量的线是否真实?
以下代码
var p = Paper.path("M1 1 L50 1");
p.attr("stroke", "#D7D7D7");
p.attr("stroke-width", "1");
p.attr("opacity", 0.5);
Run Code Online (Sandbox Code Playgroud)
画线看起来像2px或3px.还有其他选择
met*_*ion 13
当SVG线位于它们看似正确的坐标时,它们实际上位于像素之间,因此当您声明M1 1 L50 1
它在顶部绘制半个像素而在像素底部绘制另一半时,使其看起来像一条厚的半透明线.
要解决这个问题,您需要绘制半像素,或者将元素转换为半个像素,即. element.translate(0.5, 0.5)
你可以在这里看到模糊和清晰的线条:http: //jsfiddle.net/k8AKy/