在本教程中,我们将使用 fabricjs 创建一个带有虚线图案边框的三角形。三角形是 fabricjs 提供的各种形状之一。为了创建一个三角形,我们必须创建一个 fabric.triangle 类的实例并将其添加到画布中。
我们可以更改边框虚线的外观,通过使用 borderdasharray 属性。但是,我们的三角形对象必须有边框才能使该属性发挥作用。如果为 hasborders 属性指定了错误值,则此属性将不起作用。
语法new fabric.triangle({ borderdasharray: array }: object)
参数选项(可选) - 此参数是一个对象 为我们的三角形提供额外的定制。使用此参数,可以更改与 borderdasharray 为属性的对象相关的属性,例如颜色、光标、描边宽度和许多其他属性
options keysborderdasharray - 此属性接受指定破折号的array通过数组声明间隔的模式。
示例 1将 borderdasharray 作为带有自定义值的键传递让我们看一个使用 fabricjs 中的 borderdasharray 属性创建虚线图案边框的代码示例。在这个例子中,我们使用了一个 [7,10] 数组,它告诉我们将通过绘制一条 7px 长的线,后面跟一个 10px 的间隙,并一遍又一遍地重复这个相同的图案来创建该图案。
<!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 borderdasharray as key with a custom value</h2> <p>select the triangle to see the dash pattern</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 triangle object var triangle = new fabric.triangle({ left: 105, top: 60, width: 100, height: 70, fill: "#deb887", bordercolor: "red", borderdasharray: [7, 10], }); // add it to the canvas canvas.add(triangle); </script></body></html>
示例 2传递值为“false”的 hasborders 键
正如我们在此示例中看到的,即使我们已经分配了属性bordercolor 和 borderdasharray 正确的值,它们不起作用,因为 hasborders 属性已设置为 false。当设置为 false 时,不渲染对象的边框。
<!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 hasborders key with the value "false"</h2> <p>select the triangle and observe that its borders have not been rendered.</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 triangle object var triangle = new fabric.triangle({ left: 105, top: 60, width: 100, height: 70, fill: "#deb887", bordercolor: "red", borderdasharray: [7, 10], hasborders: false, }); // add it to the canvas canvas.add(triangle); </script></body></html>
以上就是如何使用 fabricjs 创建带有虚线图案边框的三角形?的详细内容。