ホームページ  >  記事  >  ウェブフロントエンド  >  FabricJSを使用して長方形の選択機能を無効にするにはどうすればよいですか?

FabricJSを使用して長方形の選択機能を無効にするにはどうすればよいですか?

PHPz
PHPz転載
2023-08-25 09:25:041005ブラウズ

FabricJSを使用して長方形の選択機能を無効にするにはどうすればよいですか?

この記事では、FabricJS を使用して四角形の選択性を無効にする方法を学びます。 Rectangle は、FabricJS が提供するさまざまな形状の 1 つです。四角形を作成するには、fabric.Rect クラスのインスタンスを作成し、キャンバスに追加する必要があります。オブジェクトを変更するには、FabricJS でオブジェクトを選択する必要があります。ただし、オプションの属性を使用してこの動作を変更できます。

構文

new fabric.Rect{ selectable: Boolean }: Object)

パラメータ

  • オプション (オプション) - このパラメータは object です。四角形を追加カスタマイズするために使用されます。このパラメータを使用すると、色、カーソル、ストロークの幅、および選択可能な性質に関連するその他の多くのプロパティを変更できます。

オプション キー

  • オプション - このプロパティは、ブール値を受け入れます。 「false」が割り当てられている場合、オブジェクトを変更のために選択することはできません。デフォルト値は true です。

#例 1

デフォルトの動作、またはオプションのプロパティが「True」に設定されている場合の

コード例を 1 つ見てみましょうオプションのプロパティがデフォルトで True に設定されている場合にオブジェクトがどのように動作するかを確認します。

Selective プロパティが True に設定されている場合、オブジェクトを選択し、キャンバス内で移動し、変更することができます。

<!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>Default behaviour; selectable property is set to True</h2>
   <p>You can try moving the rectangle around the canvas or scaling it to prove
that it&#39;s selectable.</p>
   <canvas id="canvas"></canvas>
   <script>
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas");
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);

      // Initiate a rectangle object
      var rect = new fabric.Rect({
         left: 105,
         top: 70,
         width: 170,
         height: 70,
         fill: "#dcdcdc",
         stroke: "#696969",
         strokeWidth: 5,
      });

      // Add it to the canvas
      canvas.add(rect);
   </script>
</body>
</html>

例 2

選択可能な属性をキーとして渡す

この例では、選択可能な属性の値を False に設定します。これは、修正のために長方形のオブジェクトを選択できなくなったことを意味します。

えええええ

以上がFabricJSを使用して長方形の選択機能を無効にするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。