【发布时间】:2012-09-23 13:47:40
【问题描述】:
我正在尝试使用HTML Canvas 绘制路径。它由连接在一起的几条贝塞尔曲线组成。出于某种原因,我无法绘制整个路径然后进行描边。相反,我需要为每条贝塞尔曲线描边。我使用浅紫色作为描边颜色,但在曲线的交点处,我似乎得到了类似白色的东西,而不是我期望的浅紫色。像这样(抱歉,由于我是 Stack Overflow 上的新手,所以我无法发布图片):
我使用的是不透明度为 1 的 stroke style,所以我相信这不是透明度问题。那么可能是什么导致了这个问题呢?
仅供参考,我正在使用这样的代码绘制每条贝塞尔曲线,其中 a 是画布的绘制上下文,this.bloom.c 类似于“rgba(xxx,xxx,xxx,1)”:
a.strokeStyle = this.bloom.c;
a.beginPath();
a.moveTo(e.x, e.y);
a.bezierCurveTo(c.x, c.y, b.x, b.y, d.x, d.y);
a.stroke();
非常感谢!
【问题讨论】:
-
+1。在我的脑海中,像素以 RGBA 加法方式相互复制。 PS:将您的实验放在jsfiddle.net 将允许更快的响应。根据我的经验,Webkit 和 Chrome 是最可靠的 canvas HTML5 实现,所以你不会在这里看到太大的区别。
-
另请参阅:为描边设置混合模式? stackoverflow.com/questions/4939453/…