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 lockMovementX property of the image is used to enable or disable the movementX of the canvas image.
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 then use the lockMovementX property to enable or disable the movement of the canvas image. After this render the image on the canvas and center it. Now try to move the image horizontally.
Syntax:
fabric.Image(image, { lockMovementX:Boolean });
Parameters: This function takes two parameters as mentioned above and described below:
- image: This parameter takes the image.
- lockMovementX: This parameter takes a boolean value to enable or disable the movementX of the canvas image.
Example: This example uses FabricJS to set the left position of the canvas image along the x-axis as shown in the below given example.
HTML
<!DOCTYPE html> < html > < head > <!-- Adding the FabricJS library --> < script src = </ script > </ head > < body > < h1 style = "color: green;" >neveropen</ h1 > < b >Fabric.js | Image lockMovementX Property </ b > < canvas id = "canvas" width = "400" height = "300" style = "border:2px solid #000000" > </ canvas > < img src = width = "100" height = "100" id = "my-image" style = "display: none;" >< br > < 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, { }); function lockMovementX(){ imgInstance = new fabric.Image(img, { lockMovementX:true }); canvas.clear(); canvas.add(imgInstance); } lockMovementX(); // Rendering the image to canvas canvas.add(imgInstance); </ script > </ body > </ html > |
Output: