In this article, we will create a canvas with a text cursor using FabricJS. The text cursor represents text that can be selected. text is one of the native cursor styles available for FabricJS canvas. FabricJS provides various types of cursors such as default, full scroll, crosshair, column resize, row resize, etc., which reuse the native cursor under the hood. These cursors look slightly different depending on the operating system.
new fabric.Canvas(element: HTMLElement|String, { defaultCursor: String }: Object)
element − This parameter is
options (optional) − This parameter is an object that provides additional customization of the canvas. Use this parameter to change the color, cursor, border width and many other properties related to the canvas, where defaultCursor is a property that we can use to set the type of cursor.
The defaultCursor property accepts a string that determines the name of the cursor to be used on the canvas. We set it to "text" to use the text cursor. Let's look at a code that uses FabricJS to create a canvas with a text cursor.
<!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>Canvas with text cursor using FabricJS</h2> <p>Bring the cursor inside the canvas to see the changed shape of cursor</p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas", { defaultCursor: "text" }); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); </script> </body> </html>
In this example, we will add a circle to the canvas, along with the text cursor.
<!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>Canvas with text cursor using FabricJS</h2> <p>Here we have added a circle to the canvas along with a text cursor</p> <canvas id="canvas"></canvas> <script> //Initiate a canvas instance var canvas = new fabric.Canvas("canvas", { defaultCursor: "text" }); // Initiate a Circle instance var circle = new fabric.Circle({ radius: 50, fill: "green" }); // Render the circle in canvas canvas.add(circle); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); </script> </body> </html>
The above is the detailed content of How to create a canvas with text cursor using FabricJS?. For more information, please follow other related articles on the PHP Chinese website!