In this tutorial we will learn how to disable specific control points of an image Objects using FabricJS. We can create an Image object by creating an instance fabric.image. Since it is one of the basic elements of FabricJS, we can also easily Customize it by applying properties such as angle, opacity, and more. In order to disable specific For the control points of the Image object, we use the setControlVisible method.
setControlVisible(controlKey: String, visible: Boolean): fabric.Object
controlKey - This parameter accepts a String value that specifies control. Possible values are -
'tl' - This property accepts a Boolean value that enables or disables the upper left control.
'tr' - This property accepts a boolean value that enables or disables the control in the upper right corner.
'br' - This property accepts a Boolean value that enables or disables the lower right corner control.
'bl' - This property accepts a boolean value that enables or disables the lower left corner control.
'ml' - This property accepts a boolean value that enables or disables the center-left control.
'mt' - This property accepts a boolean value that enables or disables the center-top control.
'mr' - This property accepts a boolean value that enables or disables the center-right control.
'mb' - This property accepts a boolean value that enables or disables the center-lower control.
'mtr' - This property accepts a boolean value that enables or disables the center-top rotation control. < /p>
visible - This parameter accepts a Boolean value, set when "true" Specifies whether the control is visible and invisible if "false".
Let's look at a code example to see the output when using the setControlVisible method. setControlVisible Method sets the visibility of the specified control. in this case, Since we have passed the "br" control to the wrong value, the control in the lower right corner will not No longer visible.
<!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 setControlVisible method</h2> <p> You can select the image object to see that the bottom-right control is not visible </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 setControlVisible method image.setControlVisible("br", false); </script> </body> </html>
In this example, we use the setControlVisible method to disable the "mtr" control, which Also called an upper-center rotation control.
<!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 setControlVisible method to disable the middle-top-rotate control </h2> <p> You can select the Image object to see that the middle-top-rotate control is not visible </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 setControlVisible method image.setControlVisible("mtr", false); </script> </body> </html>
The above is the detailed content of How to disable a specific control point of an Image object using FabricJS?. For more information, please follow other related articles on the PHP Chinese website!