En este artículo, vamos a ver cómo cambiar el estilo de fuente de un lienzo de texto usando FabricJS. El lienzo significa que el texto escrito es móvil y se puede estirar según el requisito. Además, el texto en sí no se puede editar como un cuadro de texto.
Enfoque: para que sea posible, vamos a utilizar una biblioteca de JavaScript llamada FabricJS. Después de importar la biblioteca usando CDN, crearemos un bloque de lienzo en la etiqueta del cuerpo que contendrá nuestro texto. Después de esto, inicializaremos las instancias de Canvas y Text proporcionadas por FabricJS y usaremos la propiedad fontStyle para cambiar el estilo de fuente y representar el Canvas en el texto como se muestra en el ejemplo a continuación.
Sintaxis:
fabric.Text(text, fontStyle: number);
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- texto: Especifica el texto a escribir.
- fontStyle: Especifica el estilo de fuente que puede ser normal , oblicua o cursiva donde normal es el estilo por defecto.
Programa: este ejemplo usa FabricJS para cambiar el estilo de fuente de un lienzo de texto.
html
<!DOCTYPE html> <html> <head> <title> How to change the font style of a text canvas using Fabric.js? </title> <!-- Loading the FabricJS library --> <script src= "https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.6.2/fabric.min.js"> </script> </head> <body> <canvas id="canvas" width="600" height="200" style="border:1px solid #000000;"> </canvas> <script> // Create a new instance of Canvas var canvas = new fabric.Canvas("canvas"); // Create a new Textbox instance var normaltext = new fabric.Text( 'GeeksforGeeks - Normal', { fontStyle: 'normal' }); // Create another new Textbox instance var obliquetext = new fabric.Text( 'GeeksforGeeks - Oblique', { fontStyle: 'oblique', top: 50 }); // Create another new Textbox instance var italictext = new fabric.Text( 'GeeksforGeeks - Italic', { fontStyle: 'italic', top: 100 }); // Render all the Textboxes on Canvas canvas.add(normaltext); canvas.add(obliquetext); canvas.add(italictext); </script> </body> </html>
Producción: