【问题标题】:How can I draw a line with easeljs-0.8.0.js?(createJs)我怎样才能用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" width="1200" height="600"></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>

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

【问题讨论】:

    标签: javascript html canvas createjs


    【解决方案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()
    猜你喜欢
    • 1970-01-01
    • 2015-03-13
    • 2023-02-04
    • 2014-04-15
    • 2015-08-21
    • 2021-12-16
    • 1970-01-01
    • 2023-01-18
    • 2017-08-30
    相关资源
    最近更新 更多