In this article, we are going to see the paintFirst property of a Polyline canvas using FabricJS. The canvas Polyline means the Polyline is movable and can be stretched according to requirements. Further, the Polyline can be customized when it comes to initial stroke color, height, width, fill color, or stroke width.
To make it possible we are going to use a JavaScript library called FabricJS. After importing the library, we will create a canvas block in the body tag that will contain the Polyline. After this, we will initialize instances of Canvas and Polyline provided by FabricJS and set the paintFirst of canvas Polyline using paintFirst property, and render the Polyline on the Canvas as given in the below example.
Syntax:
var polyline = new fabric.Polyline(Points, {
paintFirst : boolean
});
Parameters: This property accepts a single parameter as mentioned above and described below:
- paintFirst: It defines the fill or the stroke is drawn first (one of “fill” or “stroke”)
The below example illustrates the paintFirst property in Fabric.js:
Example:
HTML
<!DOCTYPE html>
< html >
< head >
< script src =
</ script >
</ head >
< body >
< div style = "text-align: center;width: 600px;" >
< h1 style = "color: green;" >
GeeksforGeeks
</ h1 >
< b >
Fabric.js | Polyline paintFirst Property
</ b >
</ div >
< canvas id = "canvas"
width = "600"
height = "200"
style = "border:1px solid #000000;" >
</ canvas >
< script >
// Initiate a Canvas instance
var canvas = new fabric.Canvas("canvas");
// Initiate a polyline instance
var polyline = new fabric.Polyline([
{ x: 200, y: 10 },{x: 250,y: 50},
{ x: 250, y: 180},{x: 150,y: 180},
{ x: 150, y: 50 },{ x: 200,y: 10 }],
{
fill:'green',
stroke: 'blue',
paintFirst: 'fill'
});
// Render the polyline in canvas
canvas.add(polyline);
</ script >
</ body >
</ html >
|
Output:

Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
22 Jan, 2021
Like Article
Save Article