如何使用 FabricJS 设置文本框的填充?

fabricjshtml5 canvasjavascript

在本教程中,我们将学习如何使用 FabricJS 设置文本框的填充。文本框是 FabricJS 提供的各种形状之一。为了创建文本框,我们必须创建 fabric.Textbox 类的实例并将其添加到画布。就像我们可以在画布中指定文本框对象的位置、颜色、不透明度和尺寸一样,我们也可以设置文本框对象的填充。这可以通过使用 padding 属性来实现。

语法

new fabric.Textbox(text: String, { padding : Number }: Object)

参数

  • text − 此参数接受 String,这是我们想要在文本框内显示的文本字符串。

  • options (可选) − 此参数是一个 Object,它为我们的文本框提供额外的自定义。使用此参数,可以更改与对象相关的属性,例如颜色、光标、笔触宽度和许多其他属性,其中 padding 是该对象的一个​​属性。

选项键

  • padding − 此属性接受 Number 值。分配的值确定文本框对象与其控制边框之间的距离。

示例 1

不使用填充时的默认外观

让我们看一个代码示例,该示例显示了未使用 padding 属性时文本框对象的外观。我们可以看到,对象与其周围的控制边框之间没有空间。这意味着文本框与其控制边框之间的填充为零。

<!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>Default appearance when padding is not used</h2> <p>You can select the textbox to see there is no space between the object and its controlling borders</p> <canvas id="canvas"></canvas> <script> // 启动一个canvas实例 var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // 初始化一个 textbox 文本框对象 var textbox = new fabric.Textbox("Keep a smile on your face. Keep a spring in your step.", { left: 110, top: 45, fill: "orange", stroke: "green", width: 400, }); // 将其添加到画布 canvas.add(textbox); </script> </body> </html>

示例 2

padding 属性作为键传递

在此示例中,我们将 padding 属性作为键传递,值为 7。这表示文本框对象与其所有控制边框之间的距离为 7px。

<!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>Passing padding property as key</h2> <p>You can select the textbox to see the padding between the object and its controlling borders</p> <canvas id="canvas"></canvas> <script> // 启动一个canvas实例 var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // 初始化一个 textbox 文本框对象 var textbox = new fabric.Textbox("Keep a smile on your face. Keep a spring in your step.", { left: 110, top: 45, fill: "orange", stroke: "green", width: 400, padding: 7, backgroundColor: "#f5f5dc", }); // 将其添加到画布 canvas.add(textbox); </script> </body> </html>

相关文章