Fabric.js 椭圆 lockUniScaling 属性

Fabric.js 椭圆 lockUniScaling 属性

在本篇文章中,我们将展示如何使用 FabricJS 锁定画布椭圆的非均匀缩放,以保持对象的纵横比。画布中的椭圆可以移动,并可以根据需求进行拉伸。此外,当涉及到初始描边颜色、填充颜色、描边宽度或半径时,可以自定义椭圆。

为了实现这个目标,我们将使用一个名为 FabricJS 的 JavaScript 库。在使用 CDN 导入库之后,我们将在 body 标签中创建一个 canvas 块,该块将包含我们的椭圆。之后,我们将使用由 FabricJS 提供的 Canvas 和 Ellipse 实例来锁定画布椭圆的非均匀缩放,使用 lockUniScaling 属性,并按照下面的示例在画布上渲染椭圆。

语法:

fabric.Ellipse({
    rx: number,
    ry: number,
    lockUniScaling: boolean
}); 

参数:

此函数接受三个参数如上所述并以下所示:

  • rx: 此参数定义横向半径。
  • ry: 此参数定义纵向半径。
  • lockUniScaling: 此参数定义是否锁定非均匀缩放。

示例:

此示例使用FabricJS锁定画布椭圆的非均匀缩放。

<!DOCTYPE html> 
<html> 
  
<head> 
    <title>  
        Lock non-uniform scaling of a canvas  
        ellipse using FabricJS 
    </title> 
  
    <!-- FabricJS CDN -->
    <script src= 
"https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.6.2/fabric.min.js"> 
    </script> 
</head> 
  
<body> 
    <div style="text-align: center;width: 600px;"> 
        <h1 style="color: green;"> 
            GeeksforGeeks 
        </h1> 
        <b> 
            lock non-uniform scaling of a canvas 
            ellipse using FabricJS 
        </b> 
    </div> 
  
    <div style="text-align: center;"> 
    <canvas id="canvas" width="600" height="200" 
            style="border:1px solid #000000;"> 
    </canvas> 
    </div> 
  
    <script> 
        // Initiate a Canvas instance 
        var canvas = new fabric.Canvas("canvas"); 
  
        // Initiate a Ellipse instance 
        var ellipse = new fabric.Ellipse({ 
            rx: 80, 
            ry: 40, 
            lockUniScaling: true 
        }); 
  
        // Render the Ellipse in canvas 
        canvas.add(ellipse); 
    </script> 
</body> 
  
</html>                    

输出:

Fabric.js 椭圆 lockUniScaling 属性

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程