Fabric.js is a JavaScript library that is used to work with canvas. The canvas ActiveSelection is one of the class of fabric.js that is used to create ActiveSelection instances. The canvas ActiveSelection means the ActiveSelection is movable and can be stretched according to requirement. In this article, we will be using lockMovementY property to lock the vertical movement.
First import the fabric.js library. After importing the library, create a canvas block in the body tag which will contain the ActiveSelection. After this, initialize an instance of Canvas and ActiveSelection class provided by Fabric.JS and use the lockMovementY property to lock the vertical movement.
Syntax:
fabric.ActiveSelection(ActiveSelection, { lockMovementY : boolean });
Parameters: This function takes a single parameter as mentioned above and described below:
- lockMovementY: It specifies if the option set to true will lock the vertical movement. It contains a boolean value.
Example: This example uses FabricJS to set the lockMovementY property of the canvas ActiveSelection as shown in the below example.
index.html
HTML
<!DOCTYPE html> < html > < head > <!-- FabricJS CDN --> < script src = </ script > </ head > < body > < div style = "text-align: center;width: 400px;" > < h1 style = "color: green;" > neveropen </ h1 > < b > Fabric.js | ActiveSelection lockMovementY Property </ b > </ div > < div style = "text-align: center;" > < canvas id = "canvas" width = "500" height = "500" style = "border:1px solid green;" > </ canvas > </ div > < img src = width = "100" height = "100" id = "my-image" style = "display: none;" > < script > var canvas = new fabric.Canvas("canvas"); // Initiate a Rect instance var rectangle = new fabric.Rect({ width: 200, height: 100, }); canvas.add(rectangle); var geek = new fabric.IText('neveropen', { }); canvas.add(geek); canvas.centerObject(geek); var gfg = new fabric.ActiveSelection(canvas.getObjects(), { lockMovementY : true }); canvas.setActiveObject(gfg); canvas.requestRenderAll(); canvas.centerObject(gfg); </ script > </ body > </ html > |
Output: