Rumah >hujung hadapan web >tutorial js >Bagaimana untuk menyemak sama ada objek IText mempunyai atribut gaya tertentu menggunakan FabricJS?

Bagaimana untuk menyemak sama ada objek IText mempunyai atribut gaya tertentu menggunakan FabricJS?

王林
王林ke hadapan
2023-08-24 23:09:101430semak imbas

如何使用 FabricJS 检查 IText 对象是否具有特定的样式属性?

Dalam tutorial ini, kita akan belajar cara menyemak sama ada objek IText mempunyai atribut gaya tertentu menggunakan FabricJS. Kelas IText telah diperkenalkan dalam FabricJS versi 1.4, yang memanjangkan Fabric.Text dan digunakan untuk mencipta kejadian IText. Kejadian IText memberi kita kebebasan untuk memilih, memotong, menampal atau menambah teks baharu tanpa konfigurasi tambahan. Terdapat juga pelbagai kombinasi kekunci yang disokong dan kombinasi tetikus/sentuh untuk menjadikan teks interaktif yang tidak tersedia dalam Teks.

Walau bagaimanapun, Textbox berdasarkan IText membolehkan kami mengubah saiz segi empat tepat teks dan membalutnya secara automatik. Ini tidak berlaku untuk IText, kerana ketinggian tidak melaras berdasarkan pemisah baris. Kita boleh memanipulasi objek IText dengan menggunakan pelbagai sifat. Begitu juga, kita boleh menggunakan kaedah styleHas untuk menyemak sama ada objek IText mempunyai atribut gaya tertentu.

Tatabahasa

styleHas(property: String, lineIndex: Number): Boolean

Parameter

  • property - Parameter ini menerima String mewakili sifat yang mesti disemak.

  • ineIndex - Parameter ini menerima Nombor yang menunjukkan indeks gaya yang akan disemak.

Contoh 1

Guna gayaMempunyai kaedah

Mari kita lihat contoh kod untuk melihat output yang dilog apabila menggunakan kaedah styleHas. Dalam contoh ini, kami menyemak sama ada atribut padding wujud untuk aksara pada indeks baris 0. Oleh kerana nilai itu wujud, nilai sebenar dikembalikan dalam konsol.

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the Fabric JS Library-->
   <scrip src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script>
</head>
<body>
   <h2>Using the styleHas method</h2>
   <p>You can open console from dev tools and see that a true value is being displayed in the console</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 an itext object
      var itext = new fabric.IText("Add Sample Text HereLorem ipsum ", {
         width: 300,
         left: 50,
         top: 70,
         fontSize: 30,
         fill: "red",
         backgroundColor: "#fedad2",
         angle: 25,
         styles: {
            0: {
               1: {
                  fill: "blue",
                  fontStyle: "bold",
               },
            },
         },
      });

      // Using the styleHas method
      console.log("Is fill property present? : ", itext.styleHas("fill", 0));

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

Contoh 2

Gunakan styleMempunyai kaedah untuk menyemak nilai yang tidak wujud

Mari kita lihat contoh kod untuk melihat rupa output yang dilog apabila menggunakan kaedah styleHas untuk menyemak nilai yang tidak wujud. Dalam contoh ini, kami menyemak sama ada atribut fontSize wujud untuk aksara dalam baris 0. Oleh kerana ia tidak wujud, nilai ralat dikembalikan.

<!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 the styleHas method to check for a value that is not present</h2>
   <p>You can open console from dev tools and see that a false value is being displayed in the console</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 an itext object
      var itext = new fabric.IText("Add Sample Text HereLorem ipsum ", {
         width: 300,
         left: 50,
         top: 70,
         fontSize: 30,
         fill: "red",
         backgroundColor: "#fedad2",
         angle: 25,
         styles: {
            0: {
               1: {
                  fill: "blue",
                  fontStyle: "bold",
               },
            },
         },
      });

      // Using the styleHas method
      console.log(
         "Is font size property present? : ",
          itext.styleHas("fontSize", 0)
      );

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

Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada objek IText mempunyai atribut gaya tertentu menggunakan FabricJS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam