Skip to content
Related Articles

Related Articles

Improve Article

Fabric.js ActiveSelection objectCaching 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 objectCaching property.

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

Syntax:

fabric.ActiveSelection(ActiveSelection, {
    objectCaching : boolean
});

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

  • objectCaching: When it is set to `true`, the object is cached on an additional canvas. When set to `false`, then the object is not cached unless necessary (clipPath). Default is set to true.

 



Example: This example uses FabricJS to set the objectCaching 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 objectCaching 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(), {
        objectCaching: true,
      });
      console.log(gfg.objectCaching);
      canvas.setActiveObject(gfg);
      canvas.requestRenderAll();
      canvas.centerObject(gfg);
    </script>
  </body>
</html>

Output:

Attention reader! Don’t stop learning now. Get hold of all the important HTML concepts with the Web Design for Beginners | HTML  course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :