我怎样才能用easeljs-0.8.0.js画一条线?(createJs)

Posted

技术标签:

【中文标题】我怎样才能用easeljs-0.8.0.js画一条线?(createJs)【英文标题】:How can I draw a line with easeljs-0.8.0.js?(createJs) 【发布时间】:2015-04-10 08:41:06 【问题描述】:

伙计们。我用easeljs-0.8.0.js画线,但是不行,能帮帮我吗?

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script src="lib/easeljs-0.8.0.js"></script>
</head>
<body>
<canvas id="demoCanvas"  ></canvas>
</body>
<script>
window.onload = function() 
    var canvas = document.getElementById("demoCanvas");
    var stage = new createjs.Stage(canvas);
    var lineShape = new createjs.Shape();
    lineShape.graphics.moveTo(10,10).setStrokeStyle(1).beginStroke("#ff0000").lineTo(50,50);
    stage.addChild(lineShape);
    stage.update();

</script>
</html>

上面的代码画不出来!!!

【问题讨论】:

【参考方案1】:

在 0.8.0 中重写了图形引擎,现在您需要在 beginStrokebeginFillbeginStrokeStyle 之后调用 moveTo,因为这些方法会“重置”路径。

见:https://github.com/CreateJS/EaselJS/issues/520

【讨论】:

谢谢,我明白了。如果可能的话,我希望createJs的教程能更清楚。 另外一个问题,我应该如何用createJs创建一个响应式画布?我想开发一个html5手游。如您所知,移动设备的屏幕大小不同,所以我想创建一个响应式画布,以便它可以适应不同的屏幕? @JospehusChou 您可以在浏览器调整大小时更改画布的宽度和高度值。在窗口上添加一个调整大小事件处理程序并相应地更新您的画布。 window.addEventListener("resize", handleResize);函数handleResize(事件) canvas.width = window.innerWidth; canvas.height = window.innerHeight; 与 v0.8.2 相同。感谢您指出。只是为 OP 提供正确的代码行:lineShape.graphics.setStrokeStyle(1).beginStroke("#ff0000").moveTo(10,10).lineTo(50,50).endStroke(); 绘制一条线。我添加了 endStroke()

以上是关于我怎样才能用easeljs-0.8.0.js画一条线?(createJs)的主要内容,如果未能解决你的问题,请参考以下文章

路径线 SwiftUI 的圆角

用 CALayer 画一条线

用 g.DrawLine 画一条简单的垂直线

用three.js动态画一条线

用OpenGL画一条任意线(即轴范围没有限制)

从 Activity 用画布画一条线