Open In App

Fabric.js Image centeredRotation Property

Last Updated : 31 Aug, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

Fabric.js is a javascript library that is used to work with canvas. The canvas image is one of the class of fabric.js that is used to create image instances. The canvas image means the Image is movable and can be stretched according to requirement. The centeredRotation property of the image is used to rotate the canvas image along the center i.e the origin.

Approach: First import the fabric.js library. After importing the library, create a canvas block in the body tag which will contain the image. After this, initialize an instance of Canvas and image class provided by Fabric.JS and set the centeredRotation property first to false then to true and try to rotate the image with the help of the controls. Then render the image instance to the canvas and center the element.

Syntax:

fabric.Image(image, {
    centeredRotation:Boolean
});

Parameters: The above function takes two parameters as mentioned above and described below:

  • image: This parameter takes the image.
  • centeredRotation: This parameter defines whether to enable or disable centered rotation of the canvas image.

Example 1: This example uses FabricJS to enable the centered rotation of the canvas image. The rotation of the image is along with the origin as shown in the below given example.




<!DOCTYPE html> 
<html
  
<head
    <!-- Adding the FabricJS library --> 
    <script src
    </script
</head
  
<body
    <h1 style="color: green;">GeeksforGeeks</h1>
    <b>Fabric.js | Image centeredRotation Property </b>  
       
    <canvas id="canvas" width="300" height="250"
        style="border:2px solid #000000"
    </canvas
  
    <img src=
        width="100" height="100" id="my-image">
    <br>
  
    <button onclick="func()">Clickme</button>
  
    <script
        // Create the instance of canvas object
        var canvas = new fabric.Canvas("canvas"); 
  
        // Getting the image
        var img= document.getElementById('my-image');
  
        // Creating the image instance 
        var imgInstance = new fabric.Image(img, {
            centeredRotation:true
        });
  
        // Rendering the image to canvas
        canvas.add(imgInstance);
        canvas.centerObject(imgInstance);
    </script
</body
  
</html>


Output:

Example 2:




<!DOCTYPE html> 
<html
  
<head
    <!-- Adding the FabricJS library --> 
    <script src
    </script
</head
  
<body
    <h1 style="color: green;">GeeksforGeeks</h1
    <b>Fabric.js | Image centeredRotation Property </b
  
    <canvas id="canvas" width="300" height="300"
        style="border:2px solid #000000"
    </canvas
  
    <img src =
        width="100" height="100" id="my-image"
        style="display:none">
    <br>
  
    <button onclick="func()">Clickme</button>
  
    <script
        // Create the instance of canvas object
        var canvas = new fabric.Canvas("canvas"); 
  
        // Getting the image
        var img= document.getElementById('my-image');
  
        // Creating the image instance 
        var imgInstance = new fabric.Image(img, {
            centeredRotation:false
        });
  
        // Rendering the image to canvas
        canvas.add(imgInstance);
  
        func=()=>{
            var imgInstance = new fabric.Image(img, {
                centeredRotation:true
            });
  
            // Rendering the image to canvas
            canvas.add(imgInstance);
            canvas.clear();
            canvas.add(imgInstance);
        }
    </script
</body
  
</html>


Output:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads