如何使用 FabricJS 设置三角形的最小允许缩放值?


<p>在本教程中,我们将学习如何使用 FabricJS 设置三角形的最小允许缩放比例。三角形是 FabricJS 提供的各种形状之一。为了创建三角形,我们必须创建一个 <em>fabric.Triangle</em> 类的实例并将其添加到画布中。</p><p>我们可以通过向三角形对象添加填充颜色、消除其边框甚至更改其尺寸来自定义它。类似地,我们还可以使用 <em>minScaleLimit</em> 属性设置其最小允许缩放比例。</p><h2>语法</h2><pre class="just-code notranslate language-javascript" data-lang="javascript">new fabric.Triangle({ minScaleLimit : Number }: Object)</pre><h2>参数</h2><ul class="list"><li><p><strong>选项</strong><strong> (可选)</strong> − 此参数是一个 <em>对象</em>,它为我们的三角形提供了额外的自定义功能。使用此参数,可以更改与对象相关的颜色、光标、边框宽度和许多其他属性,其中 <em>minScaleLimit</em> 是一个属性。</p></li></ul><h2>选项键</h2><ul class="list"><li><p><strong>minScaleLimit</strong> − 此属性接受 <strong>数字</strong> 作为值,它允许我们控制三角形的最小允许缩放值。</p></li></ul><h2>示例 1</h2><p><strong>三角形对象的默认外观</strong></p><p>让我们来看一个代码示例,看看当不使用 <em>minScaleLimit</em> 属性时我们的三角形对象是什么样子。在这种情况下,我们将能够自由地缩放我们的对象,因为没有设置最小限制。</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 triangle = new fabric.Triangle({          left: 105,          top: 70,          width: 90,          height: 80,          fill: "#746cc0",          stroke: "#967bb6",          strokeWidth: 5,       });       // 将其添加到画布       canvas.add(triangle);    </script> </body> </html></pre><h2>示例 2</h2><p><strong>将 <em>minScaleLimit</em> 属性作为键传递,并使用自定义值</strong></p><p>在此示例中,我们将看到如何将值分配给 <em>minScaleLimit</em> 属性会更改画布中三角形对象的最小允许缩放值。这里我们使用了 0.8 作为值,这意味着我们将无法将对象缩小到小于 72px 的宽度和 64px 的高度,这是通过 <strong>半径 * 限制</strong> 计算得到的 (0.8 *90 = 72px,0.8 * 80 = 64px)。</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>将 minScaleLimit 属性作为键传递,并使用自定义值</h2>    <p>您可以缩放三角形对象以查看是否设置了最小限制</p>    <canvas id="canvas"></canvas>    <script>       // 初始化画布实例       var canvas = new fabric.Canvas("canvas");       canvas.setWidth(document.body.scrollWidth);       canvas.setHeight(250);       // 初始化三角形对象       var triangle = new fabric.Triangle({          left: 105,          top: 70,          width: 90,          height: 80,          fill: "#746cc0",          stroke: "#967bb6",          strokeWidth: 5,          minScaleLimit: 0.8,       });       // 将其添加到画布       canvas.add(triangle);    </script> </body> </html></pre>

更新于: 2022年6月27日

75 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告