Propiedad perPixelTargetFind del grupo Fabric.js

En este artículo, vamos a ver cómo configurar el perPixelTargetFind de un grupo del lienzo usando Fabric.js . El Grupo en Fabric.js es móvil y se puede estirar según los requisitos. Además, el grupo se puede personalizar en lo que respecta al color del trazo inicial, la altura, el ancho, el color de relleno o el ancho del trazo.

Para hacerlo posible, vamos a utilizar una biblioteca de JavaScript llamada Fabric.js . Después de importar la biblioteca, crearemos un bloque de lienzo en la etiqueta del cuerpo que contendrá el Grupo. Después de esto, inicializaremos las instancias de Canvas y Group proporcionadas por Fabric.js y estableceremos perPixelTargetFind de canvas Group usando la propiedad perPixelTargetFind .

Sintaxis:

fabric.Group([canvas1, canvas2], {
   perPixelTargetFind: Boolean
});

Parámetros: esta propiedad acepta un solo parámetro como se mencionó anteriormente y se describe a continuación:

  • perPixelTargetFind: cuando se establece en true , los objetos se encuentran en el lienzo por píxel en lugar de según el cuadro delimitador.

Los siguientes ejemplos ilustran el uso de la propiedad perPixelTargetFind de Fabric.js Group en JavaScript:

Ejemplo:

HTML

<!DOCTYPE html>
<html>
  
  <head>
    <!-- FabricJS CDN -->
    <script src=
"https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.6.2/fabric.min.js">
    </script>
  
  </head>
  
  <body>
    <div style="text-align: center;width: 400px;">
      <h1 style="color: green;">
        GeeksforGeeks
      </h1>
      <b>
        Fabric.js Group perPixelTargetFind Property
      </b>
    </div>
  
    <div style="text-align: center;">
      <canvas id="canvas" width="500" height="300"
              style="border:1px solid green;">
      </canvas>
    </div>
  
    <script>
      // Initiate a Canvas instance
      var canvas = new fabric.Canvas("canvas");
  
      // Initiate a circle instance
      var circle = new fabric.Circle({
        radius: 100,
        fill: 'lightgreen',
        scaleY: 0.6,
        originX: 'center',
        originY: 'center'
      });
  
      // Initiate a text instance
      var text = new fabric.Text('GeeksforGeeks', {
        fontSize: 25,
        originX: 'center',
        originY: 'center'
      });
  
      // Initiate a Group instance
      var group = new fabric.Group([ circle, text ], {  
        cornerStyle: 'circle',   
        perPixelTargetFind: true    
      });
  
      // Render the Group in canvas
      canvas.add(group);
      canvas.centerObject(group);
    </script>
  </body>
  
</html>

Producción:

Publicación traducida automáticamente

Artículo escrito por thacker_shahid y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *