In this article, we are going to see how to change the noScaleCache of the text canvas using Fabric.js. The canvas means the text written is movable, rotatable, resizable, and can be stretched. Further, the text itself cannot be edited like a textbox.
Approach: To make it possible, we are going to use a JavaScript library called Fabric.js. After importing the library using CDN, we will create a canvas block in the body tag that will contain our text. After this, we will initialize instances of Canvas and Text provided by FabricJS and set the noScaleCache of the canvas text using noScaleCache property.
Syntax:
fabric.Text(text, noScaleCache :Boolean );
Parameters: This property accepts one parameter as mentioned above and described below:
- noScaleCache: It specifies whether to lock non-uniform scaling or not.
Below is the example that illustrates the use of noScaleCache property in Fabric.js:
Example:
HTML
<!DOCTYPE html> < html > < head > <!-- Loading the FabricJS library --> < script src = </ script > </ head > < body > < div style = "text-align: center;width: 400px;" > < h1 style = "color: green;" > neveropen </ h1 > < b > Fabric.js | Text noScaleCache Property </ b > </ div > < div style = "text-align: center;" > < canvas id = "canvas" width = "400" height = "200" style = "border:1px solid green;" > </ canvas > </ div > < script > // Create a new instance of Canvas var canvas = new fabric.Canvas("canvas"); // Create a new Text instance var geek = new fabric.Text('Geeks for Geeks', { noScaleCache: true }); // Render the text on Canvas canvas.add(geek); canvas.centerObject(geek); </ script > </ body > </ html > |
Output: