Maison  >  Article  >  interface Web  >  Comment désactiver un point de contrôle spécifique d'un objet Image à l'aide de FabricJS ?

Comment désactiver un point de contrôle spécifique d'un objet Image à l'aide de FabricJS ?

WBOY
WBOYavant
2023-08-24 15:25:021435parcourir

如何使用 FabricJS 禁用 Image 对象的特定控制点?

Dans ce tutoriel, nous apprendrons comment désactiver des points de contrôle spécifiques d'une image Objets utilisant FabricJS. Nous pouvons créer un objet Image en créant une instance Tissu.Image. Puisqu’il s’agit d’un des éléments de base de FabricJS, on peut aussi facilement Personnalisez-le en appliquant des propriétés telles que l'angle, l'opacité, etc. Afin de désactiver des Pour les points de contrôle de l'objet Image, nous utilisons la méthode setControlVisible.

Grammaire

setControlVisible(controlKey: String, visible: Boolean): fabric.Object

Paramètres

  • controlKey - Ce paramètre accepte une valeur String qui spécifie contrôle. Les valeurs possibles sont -

    • 'tl' - Cette propriété accepte une valeur boolean qui active ou désactive le contrôle en haut à gauche.

    • 'tr' - Cette propriété accepte une valeur boolean qui active ou désactive le contrôle dans le coin supérieur droit.

    • 'br' - Cette propriété accepte une valeur boolean qui active ou désactive le contrôle du coin inférieur droit.

    • 'bl' - Cette propriété accepte une valeur boolean qui active ou désactive le contrôle du coin inférieur gauche.

    • 'ml' - Cette propriété accepte une valeur boolean qui active ou désactive le contrôle centre-gauche.

    • 'mt' - Cette propriété accepte une valeur boolean qui active ou désactive le contrôle mi-haut.

    • 'mr' - Cette propriété accepte une valeur booléenne qui active ou désactive le contrôle du centre droit.

    • 'mb' - Cette propriété accepte une valeur booléenne qui active ou désactive le contrôle central en bas.

    • 'mtr' - Cette propriété accepte une valeur boolean qui active ou désactive le contrôle de rotation mi-haut.

  • visible - Ce paramètre accepte une valeur Boolean, définie lorsque "true" Spécifie si le contrôle est visible et invisible s'il est « faux ».

Utilisez la méthode setControlVisible

Exemple

Regardons un exemple de code pour voir le résultat lors de l'utilisation de la méthode setControlVisible. La méthode setControlVisible définit la visibilité du contrôle spécifié. dans ce cas, Puisque nous avons passé le contrôle "br" à la mauvaise valeur, le contrôle dans le coin inférieur droit ne fonctionnera pas. N'est plus visible.

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the Fabric JS Library-->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script>
</head>
<body>
   <h2>Using setControlVisible method</h2>
   <p>
      You can select the image object to see that the bottom-right control is not visible
   </p>
   <canvas id="canvas"></canvas>
   <img src="https://www.tutorialspoint.com/images/logo.png" id="img1" style="display: none" />
   <script>
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas");
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
      
      // Initiating the image element
      var imageElement = document.getElementById("img1");
      
      // Initiate an Image object
      var image = new fabric.Image(imageElement, {
         top: 50,
         left: 110,
      });
      
      // Add it to the canvas
      canvas.add(image);
      
      // Using setControlVisible method
      image.setControlVisible("br", false);
   </script>
</body>
</html>

Utilisez la méthode setControlVisible pour désactiver la rotation centre-haut Contrôle

Exemple

Dans cet exemple, nous utilisons la méthode setControlVisible pour désactiver le contrôle "mtr", qui Également appelé contrôle de rotation au centre supérieur.

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the Fabric JS Library-->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script>
</head>
<body>
   <h2>
      Using setControlVisible method to disable the middle-top-rotate control
   </h2>
   <p>
      You can select the Image object to see that the middle-top-rotate control is not visible
   </p>
   <canvas id="canvas"></canvas>
   <img src="https://www.tutorialspoint.com/images/logo.png" id="img1" style="display: none" />
   <script>
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas");
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
      
      // Initiating the image element
      var imageElement = document.getElementById("img1");
      
      // Initiate an Image object
      var image = new fabric.Image(imageElement, {
         top: 50,
         left: 110,
      });
      
      // Add it to the canvas
      canvas.add(image);
      
      // Using setControlVisible method
      image.setControlVisible("mtr", false);
   </script>
</body>
</html>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer