Skip to content
Related Articles

Related Articles

Improve Article

Fabric.js ActiveSelection paintFirst Property

  • Last Updated : 30 Jul, 2021

Fabric.js is a JavaScript library that is used to work with canvas. The canvas ActiveSelection is one of the classes of fabric.js that is used to create ActiveSelection instances. The canvas ActiveSelection means the ActiveSelection is movable and can be stretched according to requirement. In this article, we will be using paintFirst property.

First import the fabric.js library. After importing the library, create a canvas block in the body tag which will contain the ActiveSelection. After this, initialize an instance of Canvas and ActiveSelection class provided by Fabric.JS and use the paintFirst property.

Hey geek! The constant emerging technologies in the world of web development always keeps the excitement for this subject through the roof. But before you tackle the big projects, we suggest you start by learning the basics. Kickstart your web development journey by learning JS concepts with our JavaScript Course. Now at it's lowest price ever!

Syntax:

fabric.ActiveSelection(ActiveSelection, {
    paintFirst : number
});

Parameters: This function takes 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”).

 

Example: This example uses FabricJS to set the paintFirst property of the canvas ActiveSelection as shown in the below example.

HTML




<!DOCTYPE html>
<html>
  <head>
      
    <!-- FabricJS CDN -->
    <script src=
    </script>
  </head>
  
  <body>
    <div style="text-align: center; width: 400px">
      <h1 style="color: green">GeeksforGeeks</h1>
      <b> Fabric.js | ActiveSelection paintFirst Property </b>
    </div>
  
    <div style="text-align: center">
      <canvas
        id="canvas"
        width="500"
        height="500"
        style="border: 1px solid green">
      </canvas>
    </div>
    <img src=
      width="100"
      height="100"
      id="my-image"
      style="display: none"/>
    <script>
      var canvas = new fabric.Canvas("canvas");
  
      // Initiate a Rect instance
      var rectangle = new fabric.Rect({
        width: 200,
        height: 100,
      });
      canvas.add(rectangle);
  
      var geek = new fabric.IText("GeeksforGeeks", {});
      canvas.add(geek);
      canvas.centerObject(geek);
  
      var gfg = new fabric.ActiveSelection(canvas.getObjects(), {
        fill: "white",
        stroke: "blue",
        paintFirst: "fill",
      });
      canvas.setActiveObject(gfg);
      canvas.requestRenderAll();
      canvas.centerObject(gfg);
    </script>
  </body>
</html>

Output:




My Personal Notes arrow_drop_up
Recommended Articles
Page :