如何使用FabricJS建立包含文字的畫布?
在本教程中,我們將學習如何使用FabricJS建立一個包含文字物件的畫布。我們可以透過新增fabric.Text的例項來在畫布上顯示文字。它不僅允許我們移動、縮放和更改文字的尺寸,還提供額外的功能,例如文字對齊、文字修飾、行高,這些功能分別可以透過textAlign、underline和lineHeight屬性獲得。文字和文字框之間的一個區別是,文字框可以互動式編輯,而文字則不能。
語法
new fabric.Text( text: String , options: Object)
引數
text − 此引數接受一個字串,即我們想要顯示為文字的文字字串。
options (可選) − 此引數是一個物件,它為我們的文字物件提供額外的自定義選項。使用此引數可以更改與文字物件相關的顏色、游標、描邊寬度以及許多其他屬性。
示例1
建立fabric.Text()的例項並將其新增到我們的畫布
讓我們來看一個程式碼示例,說明如何將文字物件新增到我們的畫布。唯一必需的引數是實際的文字字串,而第二個引數是可選的options物件,它允許我們將不同的屬性分配給文字物件。
<!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>Creating an instance of fabric.Text() and adding it to our canvas</h2> <p>You can see the text in the canvas now</p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiate a text object var text = new fabric.Text("Add sample text here", { left: 50, top: 70, }); // Add it to the canvas canvas.add(text); </script> </body> </html>
示例2
使用set方法操作文字物件
在這個例子中,我們使用set方法(值的setter)為文字物件分配了屬性。任何與描邊、描邊寬度、角度、縮放、旋轉等相關的屬性都可以使用此方法進行修改。
<!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>Manipulating the Text object by using the set method</h2> <p>You can see the text in the canvas now with set values</p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiate a text object var text = new fabric.Text("Add sample text here"); // Set the properties text.set("top", 70); text.set("left", 65); text.set("fill", "white"); text.set("fontWeight", "bold"); text.set("backgroundColor", "#bf94e4"); // Add it to the canvas canvas.add(text); </script> </body> </html>
廣告