使用 Easel.js 处理 HTML5 Canvas 元素

javascriptweb developmentfront end technology更新于 2024/8/15 19:35:00

HTML5 Canvas 元素的流行众所周知,因为它们允许 Web 开发人员创建动画、成熟的应用程序以及交互式图表。但遗憾的是,对于某些人来说,理解 Canvas 非常困难,尤其是那些有 Flash 动画背景的人。

在本教程中,我们将探索 Easel.js 库,它允许我们使用 HTML5 Canvas 元素。 Easel.js 的语法与 ActionScript 类似,甚至具有显示列表、舞台、图形等功能,最终使 Flash 开发人员更容易使用画布。

现在我们对 Easel.js 有了一些了解,让我们了解可用的不同方法和属性。

要使用 Easel.js,第一步是导入和安装它,我们可以通过多种方式执行此操作,最常见的是使用 CDN 链接。CDN 链接如下所示。

<script src="https://code.createjs.com/1.0.0/createjs.min.js"></script>

现在让我们看看 Easel.js 带来的不同内容。

Easel.js 中的显示列表

EaselJS 中的显示列表的工作方式与 ActionScript 相同。请考虑下面显示的代码。

currentStage.addChild(myChild)

Easel.js 中的鼠标事件

我们可以非常轻松地在 Easel.js 中添加鼠标事件。您可以使用下面显示的代码片段来跟踪鼠标事件。

myChild.onPress = myFunction
myFunction(){console.log(passing a value);}

Easel.js 中的文本事件

我们也可以添加一个文本对象,它将被放置在舞台上。请考虑下面显示的代码片段。

var sampleText = new Text('TutorialsPoint+', 'Bold 12px Helvetica', #FFF);

sampleText.x = 25;
sampleText.y = 25;

myStage.addChild(myText);
myStage.update();

Easel.js 中的 Tick 事件

EaselJS 中的 Ticker 类用于提供集中的 tick。此 tick 事件以后也可以用作 AS3 计时器的替代品。请考虑下面显示的代码片段。

Ticker.setFPS(30);
Ticker.addListener(myStage);

在上面的代码中,我们将帧速率设置为 30,并将舞台作为 听众添加到 ticker。

Easel.js 中的 Tweens

Easel.js 中的 Tween 类是一个外部附加类,当我们将 TweenJS 脚本添加到文档时,它可供我们使用。请考虑下面显示的代码片段。

Tween.get(myChild).to(x : 200);

Easel.js 中的声音

还可以通过将 SoundJS 脚本添加到我们的文档来播放声音。请考虑下面显示的代码片段。

SoundJS.add('mySound',sampleSound.mp3', 1);
SoundJS.play('mySound');

在上面的代码片段中,我们使用了 addplay 方法,它们接受不同数量的参数。

使用 Easel.js 的简单 HTML5 Canvas

示例

现在我们知道了 Easel.js 中可用的不同函数和方法,让我们使用它们来创建一个简单的 Canvas。请考虑下面显示的 HTML 代码。

<html>
<head>
   <meta charset="UTF-8">
   <meta http-equiv="X-UA-Compatible" content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <script src="https://code.createjs.com/1.0.0/createjs.min.js"></script>
   <script>
      function init() {
         var stage = new createjs.Stage("sampleCircle");
         var circle = new createjs.Shape();
         circle.graphics.beginFill("Green").drawCircle(0, 0, 100);
         circle.x = 100;
         circle.y = 100;
         stage.addChild(circle);
         stage.update();
      }
   </script>
</head>
<body onload="init();">
   <canvas id="sampleCircle" width="500" height="200"></canvas>
</body>
</html>

在上面的代码中,我们首先导入"createjs.min.js",然后使用它创建一个圆形画布。如果运行上面的代码,您应该会在浏览器中看到一个绿色的圆圈。

在上面的例子中,我们画了一个圆圈。让我们再举一个例子,这次,我们将在画布上画一个正方形。请考虑下面显示的 HTML 代码。

示例

<html>
<head>
   <meta charset="UTF-8">
   <meta http-equiv="X-UA-Compatible" content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <script src="https://code.createjs.com/1.0.0/createjs.min.js"></script>
   <script>
      function init() {
         //Draw a simple sqaure on screen.
         var stage = new createjs.Stage('sampleSquare');
         var shape = new createjs.Shape();
         shape.graphics.beginFill('red').drawRect(0, 0, 120, 120);
         stage.addChild(shape);
         stage.update();
      }
   </script>
</head>
<body onload="init();">
   <canvas id="sampleSquare" width="500" height="200"></canvas>
</body>
</html>

如果运行上述代码,您应该会在浏览器上看到一个红色方块。

结论

在本教程中,我们讨论了 Easel.js 的不同函数和方法,然后我们使用了两个简单示例来展示如何使用此库来处理 HTML5 Canvas 元素。


相关文章