How to get the object scale factor of Image using FabricJS?


In this tutorial, we are going to learn how to get the object scale factor of Image using FabricJS. We can create an Image object by creating an instance of fabric.Image. Since it is one of the basic elements of FabricJS, we can also easily customize it by applying properties like angle, opacity etc. In order to get the object scale factor of Image, we use the getObjectScaling method.

Syntax

getObjectScaling(): Object 

Using the getObjectscaling method

Example

Let’s see a code example to see the logged output when the getObjectScaling method is used. In this case, the default scaleX and scaleY values will be displayed in the console which are 1.

<!DOCTYPE html> <html> <head> <!-- Adding the Fabric JS Library--> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <h2>Using the getObjectscaling method</h2> <p> You can open console from dev tools and see that the logged value is being displayed in the console </p> <canvas id="canvas"></canvas> <img src="https://www.tutorialspoint.com/images/logo.png" id="img1" style="display: none" /> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiating the image element var imageElement = document.getElementById("img1"); // Initiate an Image object var image = new fabric.Image(imageElement, { top: 50, left: 110, }); // Add it to the canvas canvas.add(image); // Using getObjectScaling method console.log("The scale factor is", image.getObjectScaling()); </script> </body> </html>

Using the getObjectScaling method and passing the scaleX property

Example

Let’s see a code example to see the logged output when the getObjectScaling method is used in conjunction with the scaleX property. In this case, the scaleX value of the image object will be displayed as 2 while the scaleY value will remain the same.

<!DOCTYPE html> <html> <head> <!-- Adding the Fabric JS Library--> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <h2>Using the getObjectScaling method and passing the scaleX property</h2> <p> You can open console from dev tools and see that the logged value is being displayed in the console </p> <canvas id="canvas"></canvas> <img src="https://www.tutorialspoint.com/images/logo.png" id="img1" style="display: none" /> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiating the image element var imageElement = document.getElementById("img1"); // Initiate an Image object var image = new fabric.Image(imageElement, { top: 50, left: 110, scaleX: 2, }); // Add it to the canvas canvas.add(image); // Using getObjectScaling method console.log("The scale factor is", image.getObjectScaling()); </script> </body> </html>

Updated on: 27-Oct-2022

86 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements