In this article, we are going to see how to enable centered scaling of a canvas Circle using Fabric.js. The Circle in Fabric.js is movable and can be stretched according to the requirement. Further, the Circle can be customized when it comes to initial stroke color, fill color, stroke width, or size.
Approach: To make it possible, we are going to use a JavaScript library called Fabric.js. After importing the library using a CDN, we will create a canvas block in the body tag which will contain our circle. After this, we will initialize instances of Canvas and Circle provided by Fabric.js, enable the centered scaling of the Circle using the centeredScaling property and render the Circle on the Canvas as given below.
Syntax:
fabric.Circle({ radius: number, centeredScaling: boolean });
Parameters: This function accepts two parameters as mentioned above and described below:
- radius: It specifies the radius of the Circle.
- centeredScaling: It specifies whether to enable or disable centered scaling.
Example: This example uses Fabric.js to enable the centered scaling of the Circle as given below. The object will scale from all sides equally.
HTML
< html > < head > <!-- FabricJS CDN --> < script src = </ script > </ head > < body > < h1 style = "color: green;" > neveropen </ h1 > < h3 > Fabric.js Circle centeredScaling Property </ h3 > < canvas id = "canvas" width = "600" height = "300" style = "border:1px solid #000000" > </ canvas > < script > // Initiate a Canvas instance var canvas = new fabric.Canvas("canvas"); // Initiate a Circle instance var circle = new fabric.Circle({ radius: 100, fill: '', stroke: 'green', strokeWidth: 3, centeredScaling: true }); // Render the circle in canvas canvas.add(circle); canvas.centerObject(circle); </ script > </ body > </ html > |
Output: