用createjs绘制一个虚线曲线

Draw a dashed curved with createjs

本文关键字:一个 虚线 曲线 createjs 绘制      更新时间:2023-09-26

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

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

    jsfiddle.net/lannymcnie/uQpdA/1/

  • 还成功绘制了二次曲线。

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

我正在使用画架js作为js库在画布上绘制。

感谢您的帮助。

LineDash支持将是EaselJS的一个很好的补充。我建议您在 GitHub (http://github.com/CreateJS/EaselJS/issues) 中发布功能请求。我可能会自己请求它,因为它是一个合乎逻辑的补充(我什至不知道它的存在,因此您引用了我之前的示例)。

这是一个快速实现。我创建了一个破折号方法,该方法在上下文中设置破折号样式。请注意,笔画实际上发生在指令列表的末尾(直到应用另一个笔画调用),因此您必须重新应用笔画才能在没有破折号的情况下开始绘图。

http://jsfiddle.net/lannymcnie/2L7vaeeh/1/

// 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);

圣诞快乐!