In this article, we are going to see how to set the stroke color of controlling corners of the canvas rectangle using FabricJS. The canvas rectangle means rectangle is movable and can be stretched according to requirement. Further, the rectangle can be customized when it comes to initial stroke color, height, width, fill color, or stroke width.
Approach: To make it possible, we are going to use a JavaScript library called FabricJS. After importing the library, we will create a canvas block in the body tag which will contain the rectangle. After this, we will initialize instances of Canvas and Rectangle provided by FabricJS and set the stroke color of controlling corners of canvas rectangle using cornerStrokeColor property and make the corner visible using transparentCorner property and render the Rectangle on the Canvas as given in the below example.
Syntax:
fabric.Rect({ width: number, height: number, cornerStrokeColor: string, transparentCorner: boolean });
Parameters: This function accepts four parameters as mentioned above and described below:
- width: It specifies the width of rectangle.
- height: It specifies the height of rectangle.
- cornerStrokeColor: It specifies the stroke color of the controlling corners.
- transparentCorner: It specifies whether to make the controlling corners visible or not.
Example: This example uses FabricJS to set stroke color of controlling corners of the canvas-like rectangle as given below. You have to click on the object to see the stroke color of controlling corners.
<!DOCTYPE html> < html > < head > < title > Fabric.js | Rect cornerStrokeColor Property </ title > <!-- Adding the FabricJS library --> < script src = </ script > </ head > < body > < canvas id = "canvas" width = "600" height = "200" style = "border:1px solid #000000" > </ canvas > < script > // Initiate a Canvas instance var canvas = new fabric.Canvas("canvas"); // Initiate a Rect instance var rectangle = new fabric.Rect({ width: 200, height: 100, fill: '', stroke: 'green', strokeWidth: 3, transparentCorners: false, cornerStrokeColor: 'blue' }); // Render the Rect in canvas canvas.add(rectangle); canvas.centerObject(rectangle); </ script > </ body > </ html > |
Output: