В этой статье я покажу, как мы можем создавать линии и полилинии на холсте с помощью FabricJS.
Линия — это элемент, который начинается в одной точке и заканчивается в другой на двумерной плоскости. Полилиния — это объект, который мы получаем при соединении нескольких сегментов линии.
Примечание:
- Нажмите здесь, если вы все еще не совсем понимаете Объекты.
Теперь посмотрим на определение конструктора:
new fabric.Line( points: Array, options: Object ) new fabric.Polyline( points: Array, options: Object )
Вы можете посмотреть на определение конструктора и подумать, что между ними нет никакой разницы. Однако объект Points Array of Line указывает начальную (x1, y1) и конечную координаты (x2, y2) линии. Принимая во внимание, что массив точек объекта Polyline указывает точки, которые мы хотим использовать в качестве координат, где каждая точка является объектом с координатами x и y.
Создание линейного объекта на холсте
Мы можем создать линейный объект на холсте с помощью FabricJS следующим образом:
<!DOCTYPE html> <html> <head> <!-- Adding the FabricJS library --> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <canvas id="canvas" style="border: 2px solid black" width="400" height="300" ></canvas> <script> var canvas = new fabric.Canvas("canvas"); // Initiating a line object var line = new fabric.Line([100, 90, 300, 20], { stroke: "green", }); // Adding it to the canvas canvas.add(line); </script> </body> </html>
Создание полилинейного объекта на холсте
Мы можем создать полилинейный объект и добавить его на холст следующим образом:
<!DOCTYPE html> <html> <head> <!-- Adding the FabricJS library --> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <canvas id="canvas" style="border: 2px solid black" width="400" height="300" ></canvas> <script> var canvas = new fabric.Canvas("canvas"); // Initiating a polyline object var polyline = new fabric.Polyline( [ { x: 50, y: 50 }, { x: 50, y: 150 }, { x: 200, y: 250 }, { x: 200, y: 50 }, { x: 125, y: 100 }, ], { stroke: "pink", // Setting the stroke color as pink strokeWidth: 2, // Setting the stroke width value fill: "#fada5e", // Using a hexadecimal value as fill color left: 50, // left offset top: 50, // top offset } ); // Adding it to the canvas canvas.add(polyline); </script> </body> </html>
Создание линии с помощью Polyline
Чтобы доказать свое предыдущее замечание о том, что ломаная линия получается путем соединения нескольких сегментов линии, я хотел показать простой пример того, как вы можете создать линейный объект, создав экземпляр fabric.Polyline.
Нам нужны (x1, y1) и (x2, y2), которые обозначают начальную и конечную координаты линии.
В приведенном ниже коде вы можете видеть, что (x1, y1) равно (50, 50) и (x2, y2) равно (250, 150).
<!DOCTYPE html> <html> <head> <!-- Adding the FabricJS library --> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <canvas id="canvas" style="border: 2px solid black" width="400" height="300" ></canvas> <script> var canvas = new fabric.Canvas("canvas"); // Initiating a polyline object var polyline = new fabric.Polyline( [ { x: 50, y: 50 }, { x: 250, y: 150 }, ], { stroke: "#ff69b4", // Setting the stroke color strokeWidth: 5, // Setting the stroke width value } ); // Adding it to the canvas canvas.add(polyline); </script> </body> </html>
Поэтому мы увидели, как легко создавать линии и полилинии с помощью FabricJS. В следующей статье мы увидим, как мы можем создать объект треугольника с помощью FabricJS.