如何使用 FabricJS 设置矩形的旋转角度?


<p>在本教程中,我们将学习如何使用 FabricJS 设置矩形的旋转角度。矩形是 FabricJS 提供的各种形状之一。为了创建一个矩形,我们将不得不创建一个 <em>fabric.Rect</em> 类的实例并将其添加到画布中。</p><p>FabricJS 中的 <em>angle</em> 属性定义了对象的二维旋转角度。我们还有 <em>centeredRotation </em> 属性,它允许我们使用矩形的中心点作为变换的原点。</p><h2>语法</h2><pre class="result notranslate">new fabric.Rect({ angle: Number, centeredRotation: Boolean }: Object)</pre><h2>参数</h2><ul class="list"><li><p><strong>选项(可选)</strong> − 此参数是一个 <em>Object</em>,它为我们的矩形提供了额外的自定义选项。使用此参数,可以更改与矩形相关的属性,例如颜色、光标、描边宽度以及许多其他属性,其中 angle 和 <em>centeredRotation</em> 是属性。</p></li></ul><h2>选项键</h2><ul class="list"><li><p><strong>angle</strong> − 此属性接受一个 <strong>Number</strong>,以度为单位指定矩形的旋转角度。</p></li><li><p><strong>centeredRotation</strong> − 此属性接受一个 <strong>Boolean</strong> 值,确定矩形的中心是否为变换的原点。</p></li></ul><h2>示例 1</h2><p><strong>传递 angle 作为键并使用自定义值,同时禁用矩形的居中旋转</strong></p><p>让我们来看一个代码示例,演示如何在 FabricJS 中设置矩形的旋转角度。负角度表示逆时针方向,正角度表示顺时针方向。由于我们将 <em>centeredRotation</em> 设置为 False,因此矩形将在使用其角点作为旋转中心时进行旋转。</p><pre class="demo-code notranslate language-javascript" data-lang="javascript"><!DOCTYPE html> <html> <head>    <!-- 添加 Fabric JS 库 -->    <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body>    <h2>传递 angle 作为键并使用自定义值,同时禁用矩形的居中旋转</h2>    <p>旋转矩形以查看其居中旋转已被禁用。</p>    <canvas id="canvas"></canvas>    <script>       // 初始化画布实例       var canvas = new fabric.Canvas("canvas");       canvas.setWidth(document.body.scrollWidth);       canvas.setHeight(250);       // 初始化矩形对象       var rect = new fabric.Rect({          left: 125,          top: 90,          width: 170,          height: 70,          fill: "#cf1020",          centeredRotation: false,          angle: 15,       });       // 将其添加到画布中       canvas.add(rect);    </script> </body> </html></pre><h2>示例 2</h2><p><strong>启用矩形的居中旋转</strong></p><p>从这个例子中我们可以看到,通过将 centeredRotation 属性设置为 true,我们的矩形现在使用其中心作为旋转中心。在 1.3.4 版本之前,centeredScaling 和 centeredRotation 包含在一个名为 centerTransform 的属性中。</p><pre class="demo-code notranslate language-javascript" data-lang="javascript"><!DOCTYPE html> <html> <head>    <!-- 添加 Fabric JS 库 -->    <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body>    <h2>启用矩形的居中旋转</h2>    <p>旋转矩形以查看其居中旋转已被启用。</p>    <canvas id="canvas"></canvas>    <script>       // 初始化画布实例       var canvas = new fabric.Canvas("canvas");       canvas.setWidth(document.body.scrollWidth);       canvas.setHeight(250);       // 初始化矩形对象       var rect = new fabric.Rect({          left: 125,          top: 90,          width: 170,          height: 70,          fill: "#cf1020",          centeredRotation: true,          angle: 15,       });           // 将其添加到画布中       canvas.add(rect);    </script> </body> </html></pre>

更新于: 2022-06-27

199 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告