Javascript 使用createjs绘制一个虚线曲线

Javascript 使用createjs绘制一个虚线曲线,javascript,canvas,easeljs,createjs,Javascript,Canvas,Easeljs,Createjs,我有一个javascript项目的问题。 类似于绘图工具的东西。我想画一条虚线 我成功地画了一条这样的虚线: jsfiddle.net/lannymcnie/uQpdA/1/ 还成功地画出了一条二次曲线 但无法绘制虚线二次曲线。 我尝试了很多东西,还有ctx.setLineDash(),但它将所有画布元素都更改为虚线,而不仅仅是曲线 我使用easeljs作为js库在画布上绘制 感谢您的帮助。LineDash支持将是对EaselJS的一个很好的补充。我建议您在GitHub()中发布一个功能请求

我有一个javascript项目的问题。 类似于绘图工具的东西。我想画一条虚线

  • 我成功地画了一条这样的虚线:

    jsfiddle.net/lannymcnie/uQpdA/1/

  • 还成功地画出了一条二次曲线

但无法绘制虚线二次曲线。 我尝试了很多东西,还有ctx.setLineDash(),但它将所有画布元素都更改为虚线,而不仅仅是曲线

我使用easeljs作为js库在画布上绘制


感谢您的帮助。

LineDash支持将是对EaselJS的一个很好的补充。我建议您在GitHub()中发布一个功能请求。我可能会自己要求它,因为它是一个逻辑加法(我甚至不知道它存在,因此我的早期示例您引用)

下面是一个快速实现。我创建了一个破折号方法,它根据上下文设置破折号样式。请注意,笔划实际上发生在指令列表的末尾(直到应用了另一个笔划调用),因此必须重新应用笔划才能开始绘制而不使用破折号


圣诞快乐

非常好,谢谢,还有一个细节,我认为这只适用于easeljs 0.8.0(当前版本),可能也适用于nexts。是的,@Hve是正确的。自2014年7月起,它还将与easeljsnext(在GitHub)合作。
// Usage
var shape = new createjs.Shape().set({x:0.5,y:0.5});
shape.graphics.s("#f00").dash([10,5]).dr(10,10,100,100)
shape.graphics.s("#f00").dash().dr(20,20,100,100);