Wednesday, July 3, 2024
HomeLanguagesJavascriptFabric js.Path paintFirst Property

Fabric js.Path paintFirst Property

In this article, we are going to see how to set the paintFirst  of a Path using Fabric.js. The Path in Fabric.js is movable and can be stretched according to requirement. Further, the Path can be customized when it comes to initial stroke color, height, width, fill color, or stroke width.

Approach:

  • To make it possible we are going to use a JavaScript HTML5 canvas library called Fabric.js. 
  • After importing the library, we will create a canvas block in the body tag that will contain the path. 
  • After this, we will initialize instances of Canvas and Path provided by Fabric.js and set the paintFirst of canvas path using paintFirst property.

Syntax:

fabric.Path('path', {
   paintFirst: String
});

Parameters: This function accepts a single parameter as mentioned above and described below:

  • paintFirst: It specifies if the fill or the stroke is drawn first (one of “fill” or “stroke”).

Below example illustrates the use of Fabric.js Path paintFirst property in JavaScript:

Example:

HTML




<!DOCTYPE html> 
<html
  
<head>
  
  <!-- FabricJS CDN -->
  <script src
  </script
</head
  
<body
  <div style="text-align: center;width: 400px;"
    <h1 style="color: green;"
      neveropen 
    </h1>
  
    <b
      Fabric.js | Path paintFirst Property 
    </b
  </div
  
  <div style="text-align: center;"
    <canvas id="canvas" width="400" height="200"
      style="border:1px solid green;"
    </canvas
  </div
  
  <script
  
    // Initiate a Canvas instance 
    var canvas = new fabric.Canvas("canvas"); 
  
    var geek = new fabric.Path(
    'M 0 0 L 100 100 L 0 100 z', {
      fill:'green', 
      stroke: 'red', 
      paintFirst: 'fill'
    });
  
    canvas.add(geek);
    canvas.centerObject(geek);
  </script
</body
  
</html>


Output:

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen 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!

Ted Musemwa
As a software developer I’m interested in the intersection of computational thinking and design thinking when solving human problems. As a professional I am guided by the principles of experiential learning; experience, reflect, conceptualise and experiment.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments